20

これらの方法を正しい方法で使用するためのガイドラインはありますか? 特に、それらの内部で使用できるコードの種類を知りたいです。

たとえば、WS からデータを取得するメソッドを呼び出す必要がある場合、どこで呼び出す必要がありますか? NSNotification はどこで登録/登録解除できますか? 等

4

2 に答える 2

31

UIViewControllerから

ビューが表示されます:

このメソッドは、レシーバーのビューが画面に表示される前、およびビューを表示するためにアニメーションが設定される前に呼び出されます。このメソッドをオーバーライドして、ビューの表示に関連するカスタム タスクを実行できます。たとえば、このメソッドを使用してステータス バーの向きまたはスタイルを変更し、表示されているビューの向きまたはスタイルに合わせることができます。このメソッドをオーバーライドする場合は、実装のある時点で super を呼び出す必要があります。

viewWillDisappear:

このメソッドは、ビューがウィンドウから削除された、または別のビューで覆われていることに応答して呼び出されます。このメソッドは、ビューが実際に削除またはカバーされる前、およびアニメーションが設定される前に呼び出されます。

サブクラスはこのメソッドをオーバーライドし、それを使用して編集の変更をコミットしたり、ビューのファーストレスポンダ ステータスを辞任したり、その他の関連タスクを実行したりできます。たとえば、このメソッドを使用して、ビューが最初に表示されたときに viewDidDisappear: メソッドで行われたステータス バーの方向またはスタイルへの変更を元に戻すことができます。このメソッドをオーバーライドする場合は、実装のある時点で super を呼び出す必要があります。

viewDidAppear:

このメソッドをオーバーライドして、ビューの表示に関連する追加のタスクを実行できます。このメソッドをオーバーライドする場合は、実装のある時点で super を呼び出す必要があります。

viewDidDisappear:

このメソッドをオーバーライドして、ビューの非表示または非表示に関連する追加のタスクを実行できます。このメソッドをオーバーライドする場合は、実装のある時点で super を呼び出す必要があります。

詳細については、View Controller Programming Guide for iOS を参照してください。

于 2011-09-12T10:23:06.083 に答える
4

答えへの追加: 実装の最初に super viewWillAppear: などのメソッドを呼び出し、メソッドの最後に viewDidAppear: を呼び出す必要があります。スーパークラスは初期化から開始し、最後に終了する必要があります。

于 2014-02-26T09:02:50.830 に答える