我在Xamarin中有多个选项卡。iOS和MvvmCross,比如Tab1 Tab2 Tab3。它们都包含在MainViewModel中。我打开一个单独的模态视图与视图模型- ModalViewModel。我需要从ModalViewModel导航到Tab2ViewModel,同时像这样调用它:
MvxNavigationService.Navigate<Tab2ViewModel>();
在已经存在的选项卡旁边打开一个新选项卡,因此它显示为带有Tab1, Tab2, Tab3, Tab2的MainViewModel。是否有一种方法从不相关的ViewModel导航到特定的选项卡?是否有办法命令MainViewModel打开特定的选项卡?
对于那些迷失的灵魂来说,解决办法很简单:
MvxNavigationService.ChangePresentation(new MvxPagePresentationHint(typeof(Tab2ViewModel)));
如果您不在MainViewModel中,请确保关闭当前视图,如下所示:
MvxNavigationService.Close(this);