2017-11-07 6 views
0

ビューコントローラが後方ナビゲーションの過程で画面から消える過程を検出するためのよく知られた解決法は、UINavigationController(すなわち、ビューコントローラがナビゲーションスタックからポップされているとき)。換言すると、ソースビューコントローラ内の後方ナビゲーションを検出する。宛先ビューコントローラの後方/ポップナビゲーションを検出するviewWillAppear

対照的に、宛先ビューコントローラでは、viewWillAppearの範囲内の後方ナビゲーションを検出する必要があります。または、別の言い方をすると、表示コントローラがUINavigationControllerポップの結果として表示されようとしているときを検出します。

これを達成する最もクリーンでシンプルな方法は何ですか? UINavigationControllerDelegateを実装し、フラグを設定することは1つのアプローチかもしれませんが、可能であれば可変状態を回避します。

ストーリーボードを使用して、これら2つの画面間の移行を管理していません。

+0

viewWillAppear 'でこれらのプロパティ' isMovingToParentViewController'または 'isMovingFromParentViewController'の検出:'役立つかもしれません。 –

+0

ありがとうございます - これは 'viewWillAppear'で動作することを確認できます:' if!isMovingToParentViewController {print( "backwards")} ' あなたが回答として再度投稿するなら、私は受け入れられたとマークします。 –

答えて

関連する問題