3 番目のタブとして UIView-Subclass (ImageViewer) をネストする UITabBarController があります。
この ImageViewer サブクラスでは、次のviewDidAppear
メソッドを呼び出します。
- (void) viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
/* ... start custom code ...
NSLog(@"viewDidAppear tag 1 passed); /* BREAKPOINT 1 here
[myUIActivityIndicator stopAnimating];
NSLog(@"viewDidAppear tag 2 passed); /* BREAKPOINT 2 here
/* ... end custom code ...
}
メソッドは自動的に呼び出されますが、奇妙なことに、このメソッドが完全に処理された後にのみビューが表示されますか?
示されているようにブレークポイント (1 と 2) を設定すると、前のタブがまだ表示されている間に (タブを選択すると) 処理が停止します。2 番目のブレークポイントの後で [続行] をクリックした場合にのみ、ビューが表示されます。(参考までに、NSLogs はすぐに実行されます)。
この場合は、より....viewDidAppear
のように動作します。viewWillAppear
何が起こっているのか手がかりはありますか?
乾杯