色々ややこしいBlocks。 宣言の仕方から、内部実装まで色々と調べたりしたのでメモ。 基本形 まずは基本形。
![[Objective-C] Blocksがややこいのでまとめてみる - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/f5c38496bf947798c8af3a01c410530848f97fc1/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9JTVCT2JqZWN0aXZlLUMlNUQlMjBCbG9ja3MlRTMlODElOEMlRTMlODIlODQlRTMlODIlODQlRTMlODElOTMlRTMlODElODQlRTMlODElQUUlRTMlODElQTclRTMlODElQkUlRTMlODElQTglRTMlODIlODElRTMlODElQTYlRTMlODElQkYlRTMlODIlOEImdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT01NiZ0eHQtY2xpcD1lbGxpcHNpcyZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPTdhOWFhYmYwNzBlOWNhNmQ3NmNmNTExMWY5Njg1YjQ3%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwZWRvX20xOCZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9MWZhNjI3N2Y5N2YyYmU4NTJmMzc3YzAyOGM1MTQ2NjA%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D9eff2aba9eae811bf5d2c831b143b239)
self.view iOS 開発において、UIViewController の view の振る舞いは一番理解しておきたい点の一つです。 今回はその view に対して、メモリ管理とレイアウトの2つの視点を交えてアプローチを行い、 UIViewController の subclass を作成する上で、 UIViewController の各メソッドにどんな処理を書くべきか、そして何を書くべきでないか を説明出来ればなと思っています。 iOS 6 以降からを対象として考えていますので、 iOS 5 以前は取り扱いません。 self.view の振る舞い 扱いを学ぶには、まず対象の振る舞いを把握する事からです。 ライフサイクルとレイアウトサイクルの2点から簡単に復習します。 self.view のライフサイクル UIViewController の view がどのようなタイミングで生成され
About the content This content has been published here with the express permission of the author. Carthage is a new dependency manager for Objective-C and Swift projects, intended to be the simplest way to add frameworks to a Cocoa application. Carthage works by delegating tasks to Xcode and Git, minimizing new concepts as much as possible, so you can continue to use the tools you’re already famil
海外事業向けのiOSアプリケーション開発を担当している西山(@yuseinishiyama)です。クックパッドは現在、海外複数カ国に向けてサービスを展開しています。 主にObjective-Cで記述されたアプリケーションを全面的にSwiftに書き換える機会があったので、その際に得た知見や書き換えるに至った動機を共有します。 書き換えに至るまでの経緯 この項では、書き換えに至るまでの経緯について説明します。 Objective-C期 アプリケーションの開発は2014年7月頃にスタートしました。Swiftの発表直後でしたが、時期尚早ということもあり、Objective-Cで実装することになりました。 Objective-C、Swift混在期 2014年10月頃から、Swiftへの段階的な移行のために、新規のコードをSwiftで書くようになりました。Swiftの記述力や、ヘッダと実装を行き来しな
iOSアプリのコーディング規約を考える時はGoogleよりもNYTimesのObjective-Cスタイルガイドを参考にすべき By raimon, 2015-03-21(土), in category Ios Googleのスタイルガイドは古い 複数人でiOSアプリをObjective-Cコードで書いて保守する時、コーディング規約を検討することになる。 参考にすべきスタイルガイドとして良く挙がるものにGoogle Objective-C Style Guideがあるが、これはいかんせん古い。メモリ管理ARCやNSNumberのリテラル構文など、比較的新しいトピックについても追記されてはいるが、 インスタンス変数のアクセス修飾子 プロパティを使う事が主流となっている2015年現在、余り扱われない autorelease を使ったオブジェクト生成など、MRC時代の規約 何よりホスティング先が
はてなさんが はてなインターンで利用したiOSアプリ等のサンプルコードを公開しました - Hatena Developer Blog という素敵なサンプルコードを公開してくれたので、好き勝手に感想を書いてみたいと思う。本来は Web アプリ側も動かしたかったんだけど、ウマく環境が作れなかったのでアプリはコードを読んだだけで動かしてはないです。あと、細かい検証とかしてないので勘違いとかしていると思うので指摘してください。 参考になった真似したい NSError と UIAlertView の使い方 NSError の内容ベースでエラーアラートを出すのは理にかなっていると思った。OS 側が返す NSError は期待する値が入っていない不親切な場合があるので、オリジナルの NSError から一度適切な値を持った NSError を再生成して返すクラスを介したらいいのかもしれない。 すっきりし
(WWDC 2014 発表資料より引用) つまりどういうこと? iOS 8 から位置情報の取得方法が変わるようです。今までの方法だと位置情報が取れなくなります。(すでにAppStoreに並んでいるアプリについてはこの限りではありません) iOS 8 : Location Services not working My app that worked fine in iOS 7 doesn't work with the iOS 8 SDK. CLLocationManager doesn't return a location, and I don't see my app under >Settings > Location Services either. I did a Google search on the issue but nothing >came up, what cou
2013-12-21 iOS7スタイルのぼかしエフェクトを使用しているハイクオリティなオープンソースUIライブラリ集 iOS7がリリースされてから、iOS7のぼかしエフェクトを使用したオープンソースのUIライブラリが多数リリースされています。今回はその中でもハイクオリティなUIライブラリを紹介します。 ちなみにiOS7のAPIでは、ぼかしエフェクトを標準で提供していません。キャプチャしてぼかしエフェクトを実現しているものが多いです。 このタイプのものは処理が重いのでiPhone5以前では対策が必要です。 iOS-blur https://github.com/JagCesar/iOS-blur iOS7がリリースした直後ぐらいにでたUIです。これはキャプチャーせずにUIToolbarのレイヤーを利用してネイティブのぼかしエフェクトを実現しています。 FXBlurView https://g
Web API を利用する iOS アプリ作成 iOS 開発 Bootcamp Introduction スマートフォン全盛期のいま、Web サービスもスマートフォンから利用される割合がどんどん高まっています。ユーザーはより便利で快適なアプリを求め、Web サービス事業者はそういったユーザーを少しでも満足させるため、日々努力しています。またスマートフォンアプリ開発を専業としていても、Web との関わりのないアプリではできることが非常に少なく、その様なアプリはいまやごくまれです。今日、Web アプリケーションとスマートフォンアプリは非常に密接な関係にあります。 Web アプリケーションとスマートフォンアプリ開発の両方を学ぶことは、そういった現在の Web をより広く見通すためには最適な課題であると言えます。どちらも学ぶことでその連関を知るだけでなく、開発の類似性や違いからより多くを学べるはず
AppSocially iOS SDK を使うと、たった1行コードを追加するだけで、友達を招待する機能をアプリに追加することができます。無料で使えて、招待数による従量課金もありません。 招待の方法もいろいろあって、いまのところ Facebook のチャット Twitter の DM メール SMS LINE が用意されています。 iOS6 以降は Social.framework によって Facebook や Twitter への投稿がものすごく簡単になりましが、DM やチャットは Accounts.framework を用いた認証や、SLRequest で API をハンドリングする処理を自前で書かなければならず *1、それでいてアプリ毎に固有な差別化要素でもないので、まるっと外部ライブラリに任せてしまえばかなり手間が省けます。 導入方法 上述したとおり、フレームワーク追加、ヘッダイン
Less than one year after its iOS launch, French startup ten ten has gone viral with a walkie talkie app that allows teens to send voice messages to their close… While all of Wesley Chan’s success has been well-documented over the years, his personal journey…not so much. Chan spoke to TechCrunch about the ways his life impacts how he invests in startups.
今回はSmartNewsのような動的レイアウトを作ってみます。 SmartNews | 話題のニュースがサクサク読めるスマホアプリ 完成イメージ こういった画面を目指します。 (サムネ画像はとりあえずのサンプル画像) アプリ設計の構想 Interface Builderを使って作ります。 UIViewControllerをベースにして、 UIView → タイトルバー(Beaunosy) UIView → アップデート日時バー(5/26(日) 20:54 発行) UITableView → 記事レイアウト部分 という構成です。 記事レイアウト部分の設計 上述した通りUITableViewがベースです。このテーブルビューに読み込ませるセルを動的にします。動的といっても単に複数のxibファイルを用意し、それを順番に読みこませるだけです。 今回は以下の3パターンのxibファイルを使いました。 パ
Captcha security check iosjp.com is for sale Please prove you're not a robot View Price Processing
もうほとんどのかたが既知の内容と思いますが、まとめさせていただきます。 これらは全てコンパイル時に事が済む類のものなので、iOS5だけでなくiOS4でも当然使えるというのが嬉しいですね! Xcode4.4適用前 Xcode4.3までのこのコードを… #pragma mark - Private Category @interface Sample () @property (strong) NSNumber* i; @property (strong) NSNumber* c; @property (strong) NSNumber* f; @property (strong) NSArray* array; @property (strong) NSDictionary* dictionary; - (void)privateMethods1; - (void)privateMethod
例えばこんなコードに違和感はありませんか? 自分の場合よくあることなのですが、例えばiOSアプリを開発していて、Google Analytics のトラッキングのためのコードを加えるとき、 - (IBAction)sendButtonDidPush:(id)sender { // トラッキングのためのコード [tracker sendEventWithCategory:@"uiAction" withAction:@"sendButtonDidPush" withLabel:nil withValue:0]; // ... // 以降、送信ボタンを押したときの処理 // ... } こんなかんじにボタンが押されたときの処理のところにトラッキングのためのコードを埋め込んだりすると思います。 これはこれで問題はないのですが、プログラムのあちらこちらにトラッキングのためのコードを埋め込んで、本来
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く