UINabigationControllerのスタックからポップされたときにUITabBarControllerをアンロードする方法はありますか?スタックにプッシュバックされたときに新しくリロードされるようにしますか?私はタブバーのすべてのビューコントローラのすべてのデータをクリアする必要があります。UINavigationControllerをポップしたときにUITabBarControllerをアンロードする方法はありますか?
私は、タブバーのビューコントローラを使ってさまざまな方法を試してみました。それぞれをnilに設定し、タブバーの表示をnilに設定しました。また、それぞれのビューにdidReceiveMemoryWarningメッセージを送信しました。
メインのnibファイル(MainWindow.xib)には、UINavigationControllerとUITabBarControllerがあります。両方ともIBOutletsとしてアプリケーションデリゲートに接続されており、コントローラ、特にタブバーコントローラを自動的にロードするのを容易にします。
ナビゲーションコントローラは、まず別のビューをルートビューとしてロードし、ユーザーがボタンをタップすると、UITabBarControllerがUINavigationControllerスタックにプッシュされます。
これはすべて問題なく動作します。
ここで、navコントローラのスタックからUITabBarControllerをポップできるようにしたいので、navコントローラのルートビューが再表示され、隠されている間にUITabBarControllerのすべてのビューのすべてのデータがリセットされます。 (スタックから外す)。
タブバーコントローラのビューコントローラの1つから、[self.tabBarController.navigationController popToRootViewController:YES]を呼び出すことができ、それは問題なく動作します。
しかし、UITabBarControllerのビューをすべてアンロードして再読み込みするにはどうすればよいですか?