UITabBar
保有してい3 UIViewControllers
ます。1 つはマップ、もう 1 つはテーブル、3 番目は独自のカスタム コントローラーです。最近、メモリ不足での動作に関して、アプリにいくつかの問題があることに気付きましたdidReceiveMemoryWarning
。
通常、十分なメモリがあれば、すべての機能が優れています。すべてのコントローラーを に割り当てるapplicationDidFinishLaunchingWithOptions
と、すべてのコントローラーがうまく機能します。
しかし、メモリが少し少ない場合に何が起こるかというと、(何らかの理由で) 私のテーブルだけが正しく動作していないということです。まず、アプリがメモリ警告を受け取ったことがわかります。そして、私のテーブルだけがviewDidUnload
. 最初は、テーブルが になった理由がわかりませんでし*completely empty*
たが、委譲メソッドが機能しなくなり、reloadData
本質的に無意味になっていることに気付きました。
これで、didReceiveMemoryWarning
がすべての viewController をカスケードしていることがわかります。しかし、viewDidUnload は私のテーブルでのみ呼び出されます。
何が起こっているのか知りたいですか?
- viewDidUnload から回復するにはどうすればよいですか? 私の見解がゼロの場合、それを取り戻す責任は誰にありますか? 私のテーブルだけがviewDidUnloadを取得しているのはなぜですか? このリンクとそのリンク、およびいくつかのリンゴのドキュメントを読んでいましたが、ビューが回復しない理由についての説明が見つかりませんでした。
この場合、私は何をすべきですか?