タブバーアプリケーションがあり、奇妙な動作が発生しています...タブバーを切り替えて新しいビューコントローラーに到達すると、これらのビューコントローラーのviewDidLoadが呼び出されることがあります...ただし、viewDidLoadは最初にのみ呼び出される必要があります...誰かが言うことができます...何か提案はありますか?
3 に答える
2
メモリ不足の警告がある場合、タブ バー コントローラーは表示されていないすべてのビューを解放します。これは、ビューがアンロードされているため、viewDidLoad を複数回呼び出すことができることを意味します。
于 2011-02-03T14:13:58.053 に答える
1
あなたのアプリはメモリを大量に消費していますか?メモリの警告が表示されるほどですか? あなたが説明している動作は経験していませんが、メモリの使用量が多いため、メモリ不足のために見えないビューが解放されている可能性があります。それらが次に呼び出されてビューに表示されるときは、 を呼び出して再初期化する必要がありますviewDidLoad
。
于 2011-02-03T14:13:32.207 に答える
0
viewWillAppearではなくviewDidLoadでよろしいですか?
viewDidLoadは、各UIViewControllerサブクラスで1回だけ呼び出されるため、レイアウトが次のようになっている場合:
-UITabBarController:
- HappyUIViewController
- SadUIViewController
- ThirdUIViewController
次に、viewDidLoadが3回呼び出されます。HappyUIViewController用に1回、SadUiViewController用に1回など。
于 2011-02-03T14:11:10.817 に答える