独自の「戻る」ボタンを実装しています。ここonClick
で、次のコードがViewController
(VC) で実行され、破棄されます。
- 現在の VC を破棄 (VC#1)
- 現在の VC (VC#1) をカスタムからポップ
navigationStack
- から最後の VC(VC#2)を取得し
navigationStack
、
presentViewController
何が起こるかというと、バックワークが視覚的に機能するということです。つまり、現在VC
が消え、前VC
が表示されます。ただし、viewDidLoad
メソッドは呼び出されません。そのため、 からのデータ更新で画面が更新されませんviewDidLoad
。
[self dismissCurrentViewController:self completion:^{
[TWStatus dismiss];
FHBaseViewController *vcToDisplay = [[FHDataManager sharedInstance] popNavigationStack];
[vcToDisplay.homeVC presentViewController:vcToDisplay animated:NO completion: ^{ }];
}];
質問:
viewDidLoad
を使うと必ず呼ばれる印象を受けましたpresentViuewController
??viewDidLoad
VC#2 でのみ呼び出されたメソッドを使用して画面を「ビルド」します。に入ることなくiOSはどのように画面を表示していますviewDidLoad
か?
ところで、私はストーリーボードを使用していません。どんな助けでも大歓迎です!