木曜日, 16 12 月 2010

viewDidLoadが呼ばれないケース
この記事をクリップ!
このエントリーをはてなブックマークに追加

« GalapaBR 1.2 is Ready for Sale! #GalapaBrowser | Main | AppStoreのアプリ情報ページに作者名を載せる方法 »
って、色々ありそうなんですが今回遭遇したのは、IBで作った
ViewControllerをIBOutletにセットした場合に呼ばれないというものでした。
いや、でも前は呼ばれてたハズだけどな?と思って調べてみると
ViewControllerが初期化された際に行う処理をawakeFromNibに書いてたんですが、
どうもこれを追加してからviewDidLoadが呼ばれなくなったっぽい事が分かりました。
うーむ…もしや!と思って、以下のように[super awakeFromNib];を足してあげると
無事viewDidLoadが呼び出されました。
- (void)awakeFromNib {
     [super awakeFromNib];

     //初期化処理
     …
}
リファレンスをよく読んでみると、「You must call the super implementation...」と
ちゃんと書かれてありますねぇ…。
リファレンスはしっかり読まないとダメっすね!
っすね!
Posted by tsujitako at 7:34 午後 in iPhone App/