Xcode には「Objective-C 2.0 に変換...」という機能がある。これは古いコードを Objective-C 2.0 から導入された Fast Enumerator と Property に変換(追加)してくれるというもの。
例えば次のクラスを定義しておいて Xcodeのメニュー「編集」から「Objective-C 2.0 に変換...」を選ぶ。
ダイアログが開くので「プロパティを使用」にチェックを付けて「プレビュー」を押す。
すると候補が表示される。必要なものだけチェックして「適用」を押すと。
こうなる。*.hファイルに @property が追加され
*.m ファイルにも @synthesize が追加される。
メンバ変数を後で追加した場合に適用した場合、その追加したメンバ変数のみ @property/@synthesize を追加してくれる。
変換対象がない場合はエラー。
適用前にファイルを選択するとどのような変更が加えられるかをプレビューできる。
iOS向け開発の場合、定番の "(nonatomic, retain)" を後から加える必要があったりするのだが、自動生成されるのは役に立つ。
もうひとつの「ループを改新」は NSEnumerator を使っている箇所を Fast Enumeration(for in〜)に変更してくれる。
最近は最初から Fast Enumeration を使うのでこちらの出番は無いだろう。
登録:
コメントの投稿 (Atom)
人気の投稿(過去 30日間)
-
[前回] Cocoaの日々: [iOS] UIWebView でパワーポイントファイルを表示する エクセル、パワーポイントときたら次はワードでしょ、という訳で試してみた。 サンプル 元のファイル。Word 2004 に付いていたテンプレートを2つ組み合わせて2ページの...
-
UIScrollView について直接使ったことが無いので調べてみた。 情報&サンプル iPhone OS Reference Library に解説とサンプルがある。 UIScrollView解説 Scroll View Programming Guide for ...
-
ビューの上の縁に影を落としたい。こんな感じ。 簡単に出来る方法はないか。 CALayer CALayer を使うと簡単にビューに影を落とすことができる。 CALayer* layer = self.imageView1.layer; layer.shadowO...
-
autorelease autorelease を使ってオブジェクトを生成した場合、そのオブジェクトはランループ(イベント処理の周期)終了時に解放される。 (例) NSMutableArray* array = [NSMutableArray array]; 通常はこの仕組...
-
[前回] Cocoaの日々: Bezelボタンを作る[05]タッチしてon/offを切り替える 今回は画像を表示する。 画像表示 まずプロパティを追加する。 @property (nonatomic, retain) UIImage* image; 次に描画コードを...
Responses
Leave a Response