使用 Xamarin 消息中心时,我应该在 base 之前还是之后取消订阅.OnDisappearing();.



我调用一个方法来取消订阅我的OnDisappearing((中的消息。

我应该在基地之后这样做吗?消失((

protected override void OnDisappearing()
{
base.OnDisappearing();
Unsubscribe();
}

或在基地之前。消失((

protected override void OnDisappearing()
{
Unsubscribe();
base.OnDisappearing();
}
private void Unsubscribe()
{
MessagingCenter.Unsubscribe<SettingsPageViewModel>(this, "OpenATIPage");
MessagingCenter.Unsubscribe<SettingsPageViewModel>(this, "OpenCFSPage");
MessagingCenter.Unsubscribe<SettingsPageViewModel>(this, "OpenCVMPage");
}

作为我的经验法则,不确定其他开发人员是如何做到的,这是我用于OnAppearingOnDisappearing的模式。

protected override void OnAppearing()
{
base.OnAppearing();
// User code for events and such
}
protected override void OnDisappearing()
{
// User code for events and such
base.OnDisappearing();
}

我喜欢在XF决定清理OnDisappearing事件中的一些资源之前清理所有内容。另外,我喜欢在工作之前打电话给XFOnAppearing,这样他们就可以先初始化他们需要的一切。

最新更新