に基づくアプリがありUINavigationController
ます。他の 9 つの「サブ画面」の 1 つにセグエする (ナビゲーション コントローラ スタックにプッシュする) ボタンを備えたメニュー画面があります。これらのサブ画面はいずれも、他の画面に続くものではありません。ユーザーが「サブ画面」にデータを入力し終わったら、元のメニュー画面に戻る完了ボタンを押すことができます。(これを想像するのが難しい場合は、1 つのルート ViewController と 9 つのリーフ ViewController があるストーリーボードのようなツリーを想像してください)。
さて、そのセットアップで、どのように機能するかについていくつか質問がありますviewDidLoad
。
~ まず、viewDidLoad
サブ画面に遷移するたびに呼び出されるはずです。たとえば、メニュー画面からサブ画面「B」に移動し、メニュー画面に戻り、サブ画面「B」に戻ったとします。B のviewDidLoad
メソッドを 2 回呼び出す必要がありますか? そうでない場合、なぜ私のものが2回呼び出されるのでしょうか?
~ 第二に、毎回呼び出されると仮定すると、サブスクリーンごとに一度だけ実行する必要がある長い操作がたくさんある場合はどうすればよいですか? それらをどこに配置すればよいですか (viewDidLoad
ユーザーがこのページとメニューの間を行き来し続けると、それらを配置すると複数回発生します)?