、
ビューコントローラAは、それがUIViewController
牽引のいずれかの方法であなたの条件(複数可)に-dependsを実装することにより、再表示されていることを知っている - :
ビューコントローラににビューが追加されようとしていることを通知します。ビュー階層。
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
// ...
}
または
は、そのビューがビュー 階層に追加されたビューコントローラに通知します。
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
// ...
}
ビューコントローラが提示されたときに、これらの方法の両方はまた、実行されることに注意してください/だけでなく、却下された後/ポップ、プッシュ。
あなたのケースでは、コントローラBが消えているか消えているかどうかを知る必要があります。この目的のために、あなたもあなたの条件(複数可)に-depends -also UIViewController
のいずれかの方法を実装することができ - :
は、そのビューを約あるビューコントローラを通知しますビュー階層から から削除されます。
または
は、そのビューがビュー 階層から削除されたビューコントローラに通知します。したがって
、現在提示ビューコントローラはビューコントローラBであり、以下のように2つのビューコントローラ間のメソッドの呼び出しを組み合わせた階層があるべき、却下されると仮定:
View Controller B =>viewWillDisappear(_:)
。
表示コントローラ =>viewWillAppear(_:)
です。
表示コントローラB =>viewDidDisappear(_:)
です。
表示コントローラ =>viewDidAppear(_:)
です。
viewWillAppearとviewWillDisappearを使用してください –
ありがとうございますAhmad F –