2012-02-28 10 views
0

私は、leftBarButtonItemを介して(親ビューコントローラに戻るためにスタックからポップされた)いくつかのコードを実行したいUIViewControllerを持っています。このビューは独自のサブビューを持っているので、viewWillDisappearを使うことはできません。leftBarButtonItemにリスナーを追加

ユーザが左のバーボタンを押してスーパービューに戻るときに、私がカスタムメソッドを呼び出す最良の方法は何ですか?

答えて

1

サブビューでも、viewWillDisappearを使用できるはずです。

サブビューで特定のアクションを実行する必要がある場合は、viewWillDisappearで実行してください。何らかの理由であなたが左のバーボタン項目のタップを検出しなければならない場合

はあなたの最善の策は、そっくりUIImageViewとそのUIViewControllerの実際のUINavigationBarをオーバーレイし、(カスタムそっくり左側にある「戻る」ボタンを実装することです標準のUIButton)。その後、

リンクIBActionにカスタムボタンとの事はときにそのサブビューの負荷それが返すときだけでなく私の見解は、消えている

[self.navigationController popViewControllerAnimated:YES]; 
+0

続いそこに何が必要アクションを実行そのsuperviewので、viewWilDisappearが出ています。そのカスタムのものは少し不幸に聞こえる。たぶん私はこれと別の方向に行く必要があります... –

+0

これは間違いなく、全体のアプローチはいくつかの再作業を使用することができますが、それがポップされているか、サブビューが読み込まれているかどうかを確認するviewWillDisappear内のチェックを実行することができます。さらに、Storyboardに切り替えて、 ' - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender'メソッドを使用してニーズに合わせてカスタマイズすることができます。 – 0x90

+0

私はそれを再考するつもりですが、それは良い考えです。ありがとう! –

関連する問題