アップデート
この回答のすべてが古いニュースです.XCode 4.5以降、アンワインドセグエを使用して以前のviewControllerに戻り、そのコントローラーでアンワインドメソッドをトリガーできます。(@rdelmar に感謝)
Unwind セグエとは何ですか? また、どのように使用しますか?
古い方法/コードの方法..これには、特定のメソッドを実装するためのデリゲートが含まれるのが理想的です
クラスがそれ自体を却下すると、それをつかむことができなくなります。却下される前にそれを保持し、却下について知る必要があります。
これについて少し詳しく説明すると、通常、クラスは自分自身を却下するのではなく、クラスを所有するクラスが却下します。ここでの難読化メソッドは、UIViewController メソッドである可能性があります。
- (void) dismissViewControllerAnimated:
これはの省略形です
- (void) [[self presentingViewController] dismissViewControllerAnimated:completion:nil]
提示側の viewController には、presentedViewController
破棄されたオブジェクトが破棄されるまで保持するプロパティがあります。presentingViewController が終了すると、そのpresentedViewController
プロパティは nil にリセットされます。ただし、その参照を別の (強力な/保持された) プロパティにコピーするオプションが常にあり、イベントを閉じる前にそれを調べることができます。
リンゴを引用するには:
「レシーバーの提示されたView Controllerへの参照を保持したい場合は、[dismissViewControllerAnimated:completion:]を呼び出す前に、presentedViewControllerプロパティの値を取得してください。」