iPhone(iOS) SDKでゲーム(1)

とりあえず、ビュークラスを追加してタイマーで更新するアプリを作る。


■ビューの追加
Xcode: Window-based-Applicationを作る
Xcode: UIViewのサブクラスMyViewを作る。
Xcode: MyAppDelegateクラスに、IBOutlet MyView *view; を追加する。
○ IB: MyViewクラスを、WindowのサブViewとして上にはりつける。
○ IB: MyAppDelegateクラスのviewと、MyViewのインスタンスを関連付ける。


■タイマーの追加
Xcode: MyAppDelegateに関数、- (void)onTimer:(NSTimer*)theTimer; を追加する。
Xcode: MyAppDelegateのdidFinishLaunchingWithOptionsに以下の行を追加。
timer = [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(onTimer:) userInfo:nil repeats:YES];
Xcode: MyAppDelegateのonTimerで適当に処理をする。


■ビューの描画について
[view setNeedsDisplay];
を実行すると、viewクラスの以下の関数が呼ばれる。
- (void)drawRect:(CGRect)rect;


■ビューの初期化について
IBで追加したUIViewクラスは初期化時に、
- (id)initWithCoder:(NSCoder*)coder; が呼ばれる。
- (id)initWithFrame:(CGRect)frame; は呼ばれない。
また、- (id)init;も呼ばれない。


これが良い方法かどうかわからないが、めんどくさい。
次回は、MyViewクラスでのタッチイベントの取得と描画。