iOSでイベントを購読する最も良い方法はViewDidLoadですが、ビューを閉じるとViewDidUnload()は呼び出されません(メモリの警告がある場合のみ)。Monotouch/iOS:デリゲートの退会に最も適した場所
イベントを退会するのに最も適した場所はどれですか?
は、(サブビューは二回、私は(viewdidunloadに退会ので、2つのイベントトリガを受信すると、オープンsubviewControllerでは、私は、MainViewControllerを参照するイベントをサブスクライブ)と呼ばれることはありません。)
どう購読/購読中止で約ViewWillAppear/ViewWillDisapperで?
public override void ViewWillAppear (bool animated)
{
base.ViewWillAppear (animated);
this.mBL.OrderChanged += HandleOrderChanged;
}
public override void ViewWillDisappear (bool animated)
{
base.VieWillDisappear (animated);
if (this.mBL!=null)
this.mBL.OrderChanged -= HandleOrderChanged;
}
ViewWillAppearとViewWillDisappear()を使用して何が悪いですか?チェックは必要ありません。あなたの小切手に関するもう1つの質問:ViewDidUnloadの中で "View.Window"を呼び出すと、 "View"コールがビューを再度読み込まないでしょうか? – Krumelur
私はViewWillAppearとViewWillDisappearを使用しています。 – BlueSky
UINavigationControllerの内部で、ViewWillAppearとViewWillDisappearが期待どおりに機能しないことに注意してください。 ViewWillAppear/Disappearは、コントローラがオーバー押しされたときに呼び出されることはありません。モーダルビューコントローラでも同様です。 – jonathanpeppers