UIViewControllerの仕様

今日は、結構でかいサウンドファイルを読み込んで再生するとかいうプログラムを書いてたんだけど、何個かNavigationControllerにUIViewControllerを突っ込むと、いつの間にか表示してないViewが解放されていたりで困ったりした。

どうやらこれはUIViewControllerのデフォルトの挙動のようで、didReceiveMemoryWarningの実装がViewを解放するようになっているかららしい。

なので、ViewControllerのメンバの初期化はViewDidLoadでやっちゃいけない。Init系でやらないと、初期化コードが意図しないタイミングで走ってしまいます。viewDidLoadは複数回呼び出される可能性かあるよー

loadViewとの使い分けがいまいちわかってないけど、その辺はおいおい・・・

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中