我希望我的应用程序显示一个登录页面,然后是一个带有汉堡包的MasterDetail页面'菜单。在汉堡菜单上,我想要一个关闭主细节的注销条目,并再次显示登录页面。我除了注销部分外都有工作。
我复制了MvvmCross Playgrounds示例中的代码,特别是MixedNavFirstPage(伪造登录程序),MixedNavMasterDetailPage('汉堡菜单')和MixedNavMasterRootContentPage。
如果我尝试用await _navigationService.Close(this)
关闭MixedNavMasterDetailPage,那么我在MvxFormsPagePresenter.CloseMasterDetailPage()
这个问题How to Exit (or Navigate out of )a MasterDetail page to a simple ContentPage in Xamarin. Forms?涵盖了我想在Xamarin.Forms中做的事情。我只是不确定如何在MvvmCross中做同等的事。
答案 0 :(得分:1)
在LoginPage
添加MvxContentPagePresentation
属性NoHistory = true
然后只需导航到登录页面,当用户登录后,使用NoHistory = true
导航到您的MasterDetail页面。
当用户再次注销时,只需导航到您的LoginPage
,然后将完全删除NoHistory = true
MasterDetail。
[MvxContentPagePresentation(WrapInNavigationPage = false, NoHistory = true)]
public partial class LoginPage : MvxContentPage<LoginViewModel>
{
public LoginPage()
{
InitializeComponent();
}
}