「iOSコーディングスタイルを変えてしまうBlocksKitの紹介」を読んで興味が出たので、BlocksKitのリファレンスを流し読みしたメモ書きです。
カテゴリで拡張されてる機能
- NSObject(BlocksKit)
- performSelectorのblock構文版が追加されてる
- KVO関連のblock対応メソッド(addObserverForXXX,removeObserverXXX)が追加されている
- コレクションクラス(NSXXXSet NSXXXXArray NSXXXXDictionary)
- eachやmap等が追加
- 単発利用なら便利そうだが、繋げて使うならUnderscore.mの方がよさそう。
- NSCache(BlocksKit)
- NSCache使ったこと無いからよく分からない。。。
- willEvictBlock と objectForKey:withGetter:
- NSTimer(BlocksKit)
- target/selectorのblock置き換え
- scheduledTimerWithTimeInterval:block:repeats:
- timerWithTimeInterval:block:repeats:
- UIActionSheet(BlocksKit)とUIAlertView(BlocksKit)
- delegateの代わりにblock構文が使える
- UIControl(BlocksKit)とUIBarButtonItem(BlocksKit)
- target/selector の代わり
- あれUIBarButtonItemってUIControlの子クラスじゃなかったっけ?
- UIGestureRecognizer(BlocksKit)
- UIPopoverController(BlocksKit)
- UIView(BlocksKit)
- touchイベントのblock化
- UIWebView(BlocksKit)
- ロード完了時などのイベント処理をblock化
インストール
CocoaPodでpod 'BlocksKit'