【问题标题】:MvvmCross navigate back from TabLayoutMvvmCross 从 TabLayout 导航回来
【发布时间】:2018-09-27 08:33:34
【问题描述】:

我正在使用 MvvmCross 5.6.6。 我正在使用 IMvxNavigationService 进行导航。 从 TabLayoutViewModel 导航到选项卡的视图模型:

tasks.Add(NavigationService.Navigate<TabOneViewModel>());                               
tasks.Add(NavigationService.Navigate<TabTwoViewModel>());                               tasks.Add(NavigationService.Navigate<TabThreeViewModel>());
tasks.Add(NavigationService.Navigate<TabFourViewModel>());
await Task.WhenAll(tasks);

所有片段使用:

[MvxFragmentPresentation(FragmentHostViewType = typeof(DamagePanelView), FragmentContentId = Resource.Id.content_frame, AddToBackStack = true)]

当我关闭主视图模型(TabLayoutViewModel)时,如何关闭(删除)所有选项卡视图模型(TabOneViewModel、TabTwoViewModel、TabThreeViewModel、TabFourViewModel)?

【问题讨论】:

    标签: android xamarin xamarin.android mvvmcross


    【解决方案1】:

    你可以这样使用:

        public virtual Task<bool> Close(IMvxViewModel viewModel)
        {
            var args = new NavigateEventArgs(viewModel);
            OnBeforeClose(this, args);
            var close = ViewDispatcher.ChangePresentation(new MvxClosePresentationHint(viewModel));
            OnAfterClose(this, args);
    
            return Task.FromResult(close);
        }
    

    只需在要关闭主视图模型的代码部分中使用此函数为要关闭的每个页面执行for

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-02
      • 2017-11-13
      • 1970-01-01
      相关资源
      最近更新 更多