我正在使用Xamarin和MvvmCross(目前为5.6.2)开发Android应用程序(后来也是iOS) . 我正在使用两个平台的原生UI(Xamarin.Android,Xamarin.iOS) .
该应用程序具有层次结构,类似文件夹的结构 . 导航到这个结构并导航回来在简单的情况下正常工作 .
在某些情况下,我需要从另一个顶级视图模型导航到这个层次结构 . 为了支持正确的反向导航,导航堆栈应该从
home -> vm1
至
home -> root -> folder -> folder -> vm2
目前我在 vm1
中调用 await NavigationService.Close()
,使用 home
中返回的值,然后对 await NavigationService.Navigate<>()
进行一系列调用以达到 vm2
.
导航(也返回)工作正常,但在转换到 vm2
期间,会短暂显示 home
等的视图 . 这真的让人分心 .
如何浏览多个视图模型(并使用返回值等),但不显示除最终视图之外的视图?
1 回答
对于MVVMCross来说,这是不可能的,因为它是特定VM的allows only to Navigate . 使用正常的Xamarin.Forms导航,您可以使用:
并修改导航堆栈,插入或删除所需的页面 .
Documentation