読者です 読者をやめる 読者になる 読者になる

牌語備忘録 -pygo

あくまでもメモです。なるべくオフィシャルの情報を参照してください。

牌語備忘録 -pygo

今現在 iOS4.x だがあえて『はじめてのiPhone3プログラミング』を読むにあたり

Books iOS Objective-C


おすすめと言われて『はじめてのiPhone3プログラミング』を買ってみた。
ちょいと古いからか大型書店でも見つけられず Amazon で中古本を購入。
想定以上に分厚い書籍だったが、ざっと眼を通した感じ幅広く網羅していて良さそうな気がする。
しかもお安く手に入れられたし幸運かもしれない。
だがしかし少々古い本なので、そのままだと動かなかったりと問題が。


(環境: MacOSX10.5, Xcode3, SDK iOS4.3)

サンプルコードのダウンロード

ここからダウンロードできる。
Beginning iPhone 3 Development
作者のフォーラムに入らないと落とせないとかどこかに書いてあったけど、そんなことしなくても上記から手に入れられる。

そのままだとビルドできず

SBクリエイティブ:開発環境Xcode 3.2.3 for Mac OS X 10.6 and iPhone OS 4.0について』に書いてある通りそのままビルドできないので一手間必要。
Xcode の設定を変更。

  1. メニューバーのプロジェクト
  2. プロジェクト設定を編集
    1. ビルド
    2. アーキテクチャ
    3. ベースSDK を『Latest iOS に変更』

これで『ビルドと実行』をクリックすればiPhoneシミュレータが立ち上がるはず。

文字の間違い多いので注意。

●P.95 12〜13行目
○正 「Second」セグメントでも同じことを繰り返し、このタイトルを「Button」に変えましょう。
×誤 「Button」セグメントでも同じことを繰り返し、このタイトルを「Second」に変えましょう。

●P.137 4行目
○正 〜Use Core for storage がチェックされていないのを確認してください。
×誤 〜Use Core for storage がチェックされているのを確認してください。

●P.141 サンプルコード(下段)8〜9行目
○正 @property (nonatomic, retain) YellowViewController *yellowViewController;
    @property (nonatomic, retain) BlueViewController *blueViewController;
×誤 @property (retain, nonatomic) YellowViewController *yellowViewController;
    @property (retain, nonatomic) BlueViewController *blueViewController;

●P.146 サンプルコード 5行目
○正 削除
×誤 [super ViewDidLoad];

●P.155 8行目
○正 beginAnimations:context:は2つのパラメータを取ります。
×誤 beginAnimations:context:は2つのパラーメを取ります。

●P.170 10行目
○正 nib名を、CustomPickerViewControllerに変えます。
×誤 nib名を、SinglePickerViewControllerに変えます。

●P.206 11行目
○正 この場合は1秒半後ですが、これによって、ユーザーに結果を知らせるまではボタンを表示しないで、ダイヤルが……
×誤 この場合は1秒半後ですが、これによって、ユーザーに結果を知らせる前に、ダイヤルが……

●P.206 14行目
○正 もしプレイヤーが本当に勝ったら、サウンドを鳴らす、playWinSoundメソッドを呼び出す……
×誤 もしプレイヤーが本当に勝ったら、サウンドを鳴らし、playerWonメソッドを呼び出す……

●P.233 6行目
○正 tableView:cellForRowAtIndexPath:
×誤 tableView:cellForRowWithIndexPath:

●P.256 2行目(サンプルコード下段)
○正
NSMutableDictionary *allNamesCopy = [self.allNames mutableDeepCopy];
self.names = allNamesCopy;
[allNamesCopy release];

×誤 self.names = [self.allNames mutableDeepCopy];

●P.256 5行目
○正 処理の内容は、ミュータブルコピーのallNamesを作成し、

×誤 これがやるのは、allNamesのミュータブルコピーを作成し、

【正誤情報】 『はじめてのiPhone3プログラミング』

メモ

  • 第5章 2つのビューをデザインする
  • 第10章 アプリケーション設定とユーザデフォルト
    • サンプルコードでもビルドしてアプリ起動すると落ちる。どこかコードおかしい? -> と思って『Beginning iPhone 4 Development』のサンプルコード落としてやったら動いた。。だがだが最初のコードもビルドしたらなぜか動いた。Xcode再起動したから?