どうも、佐野です。今回は UIAlertView
の拡張カテゴリを作って、delegate
ではなく Block
でコールバック処理を記述するための拡張カテゴリの作り方を紹介します。
iOS4 から Objective-C では Blocks
という独自のクロージャ機能が搭載されました。これによってアニメーションの記述やコールバック処理などグッと直観的・効率的に記述できるようになったのですが、残念ながら
UIKit によって提供されているクラスの多くはまだ Blocks
に最適化された作りになっていません。UIAlertView
もそのひとつです。
UIAlertView
は、その delegate
を実装することでユーザアクションに対する処理を記述する訳ですが、どうも使い勝手が悪い。例えば、同じで画面内で2通りの …