ナビゲーションコントローラーでデフォルトの[戻る]ボタン(例<設定)を押しているときに、関数を呼び出そうとしています。
他の状況では、カスタムボタンを作成しています。Ctrl+ドラッグしてXCodeの赤い[終了]ボタンに移動し、それを[選択セグエ]にポイントしています。
ここで、ナビゲーションコントローラーのデフォルトの戻るボタンを使用する必要がありますが、ストーリーボードビューには戻るボタンがないため(ただし、シミュレーターには存在するため)、セグエアクションに割り当てるように設定することはできません。
シミュレーター:
XCode:
ナビゲーションコントローラーでカスタムボタンを作成し、カスタムの巻き戻しセグエを割り当てることができますが、そのボタンは "<"記号がないと醜くなります。
私はstackoverflowでいくつかの答えを見つけましたが、それらはすべてObjective-C :(で書かれています。
デリゲートメソッドを使用して、目的を達成できます。
ここに本当に考え抜かれたSwiftデリゲートとセグエを扱うチュートリアル: http://makeapppie.com/2014/07/05/using-delegates-and-segues- part-2-the-pizza-demo-app /
あなたが求めていること、戻るボタンのアクションをキャッチする能力は、あなたがそれを説明する方法では不可能です。
ほとんどの人はカスタムボタンを作成してから、巻き戻しセグエを使用することをお勧めします。
Swiftを初めて使用する場合に備えて、カスタムの戻るボタンに関するチュートリアルはたくさんあります。カスタムの戻るボタンの見苦しい部分は、そこに独自の矢印を置くことで簡単に修正できます。
また、私は将来の参照のためにこの前の質問を見つけました: Swiftのナビゲーション戻るボタンからセグエを巻き戻します
実際には、アンワインドセグエをビューコントローラー全体に割り当てました(黄色のビューコントローラーアウトレットから右クリックし、出口アウトレットにドラッグして、関数を選択します)。これまでのところうまくいきます。カスタムボタンもデリゲートも必要ありません。実際、私のプロジェクトでは、子は現在の発信者のビューコントローラーに従って別の親の関数を呼び出すことになっており、同じ関数名を使用するだけで私の夢が実現します。
このページは私に大いに役立ちました: http://spin.atomicobject.com/2014/12/01/program-ios-unwind-segue/