- 追加された行はこの色です。
- 削除された行はこの色です。
-iPhone,iPadプログラミングについて
*Objective-C [#kc6362d8]
**一行知識 [#h84e1d64]
|#import|<>だと標準ライブラリのディレクトリから検索。""だと現在のディレクトリから検索。一度読み込んだものは再度読み込まない。|
**Javaとの比較 [#e2fa3910]
プロパティはJavaと同じ感覚でつかえるけど、メソッドの呼び方が他の言語と比べると特殊。ネストしてたら目も当てられない複雑さ。
|this.someMethod(arg1, arg2)|[self someMethod:arg1 arg2:arg2]|
|List|NSMutableArray|
|Map|NSMutableDictionary|
|interface|protocol|
|view.getI()|sender.tag|
**ARCとは [#j88e3d0c]
参照カウントを自動でやってくれる機構。
*iOS [#j529f156]
**プロジェクトファイルの構成 [#y1a2abf2]
一つのViewControllerだけのアプリケーションであればシンプルで、ViewControllerで使いたい部品をViewController.hに接続してあげればよい。アプリ全体の起動、終了にかかわることはViewControllerに記述するのではなく、AppDelegateにまさに委譲している。これにより複数ViewControllerがあるアプリでも、アプリ全体に関する設定の記述を迷わなくてすむのだ。
**アプリケーションデリゲート [#y8329526]
イベントの通知をうけるメソッドを定義してある。Androidでいうところのライフサイクルイベント。どのときに呼ばれるかはメソッド名を見れば一目瞭然。またActivityにListenerを実装するようにコントローラー自体にdelegateメソッドを持たせることも可能。その場合はViewController.hでプロトタイプを宣言しておく。たとえばUITextFieldDelegateを実装する場合は<UITextFieldDelegate>と宣言し、実装クラスでtextFieldShouldReturnメソッドを実装する。UIAlertViewにもdelegateを指定することができる。ボタン押されたときの処理分岐をViewControllerで実装することができる。
**複数Viewでの情報共有 [#a27fc3f3]
アプリケーションデリゲートにプロパティを追加する。そのプロパティを各ViewControllerで利用する。なお利用するためにはimport文が必要
**TavBarにViewを追加するときの手順 [#e4f54712]
+テンプレートからCoCoaTouchのUIViewControllerのサブクラスを選択。h,m,xibの3ファイルができる
+タブアイテムを選択し、Identifyでクラスと結びつける。Attributeでxibと結びつける
**コード内でUI部品の追加 [#e6e48136]
UILabel *label = [[[UILabel alloc] init] autorelease];
[self.view addSubview:label];
*お役立ちリンク集 [#cf517e57]
http://golog.plus.vc/iphone/906/
http://d.hatena.ne.jp/moto_maka/20110425/1303673150
*Xcode4 [#s6de4a5c]
**ナビゲータエリア [#edcf650f]
eclipseのパッケージエクスプローラーの位置にある。通常はファイル表示。シンボルナビデーターでクラス名やメソッド名のみ表示させることができる。
**エディタ [#wa8da91d]
|アシスタントエディターの分割|Viewメニューから選べる。また右上のプラスボタンで分割できる|
|アシスタントエディターで開く|Option(Alt) を押しながらクリックする|
|開く場所を選ぶ|Option(Alt)+Shift を押しながらクリックする|
|メソッド定義へ飛ぶ|Command(Windows)を押して、クリックか右クリックして定義へ飛ぶ|
**外部ライブラリ [#d4c9c85f]
frameworkフォルダに依存フレームワークを持ってくる
*書籍情報 [#cc13fcfc]
|書籍名|感想|場所|サポートサイト|
|iOSデバッグ&最適化技法 for iPad/iPhone|入門レベルでは必要性を感じないが、そのうち再読必要|上福岡図書館||
|10日でおぼえる iPhoneアプリ開発入門教室|サンプル、画面キャプチャー豊富でこれよい!|元大井町図書館||
|よくわかるiPhoneアプリ開発の教科書|各パーツの説明は丁寧だけど、つなぎ合わせてのサンプルが少ない。Xcode4対応版もあるので注意|NCC|http://book.mycom.co.jp/support/pc/iphonesdk_book/|
|iPhone/iPad/iPod touch プログラミングバイブル|同じ著者のAndroid本と同じくコード上で部品を配置していくスタイル。インターフェースビルダーすら使わない|NCC||