棱镜Xamarin导航 - 奇怪的行为

时间:2016-08-28 22:17:58

标签: xamarin.forms prism

我有一个MasterDetail页面,在Xaml中将导航菜单定义为主位,只是一个空的详细信息。

用户登录后,我使用以下路径导航到主页

await _navigationService.NavigateAsync(PageCodes.NavigateTo_MainMenuPage + "/" + PageCodes.NavigateTo_NavigationPage + "/" + PageCodes.NavigateTo_WelcomePage); 
  • NavigateTo_MainMenuPage是我的MasterDetail页面
  • NavigateTo_NavigationPage一个空的导航页面
  • NavigateTo_WelcomePage我的主页(内容页面)

这完美无缺,iOS显示导航(主)和欢迎页面(内容页面)

Master-detail all good

导航中的一个选项是转到关于页面(因此用户通过MasterDetail.Master XAML触发此操作)

我期待这段代码

await _navigationService.NavigateAsync(PageCodes.NavigateTo_WebPage, param);

将替换MasterDetail页面的详细信息位,而不是将其打开为模型页面(全屏),应用程序将丢失汉堡菜单。我甚至试图在param之后添加false,但它没有工作

Modal

此代码

await _navigationService.NavigateAsync(PageCodes.NavigateTo_NavigationPage + "/" + PageCodes.NavigateTo_WebPage, param, false);

打开页面作为主页面的子页面(iOS显示回欢迎页面),这是我不想要的。

Not good

我甚至试过这段代码

await _navigationService.NavigateAsync(PageCodes.NavigateTo_MainMenuPage + "/" + PageCodes.NavigateTo_NavigationPage + "/" + PageCodes.NavigateTo_WebPage, param, false);

但它显示没有母版页的NavigateTo_WebPage,因为我看不到汉堡包菜单

Hambuger is missing

只是为了澄清所有这些代码发生在MainMenuPage(MainMenuPageViewModel)的视图中

所以,我的问题是我做错了什么以及如何将Prism新内容推送到MasterDetail页面的详细位置

提前致谢!!!

1 个答案:

答案 0 :(得分:0)

我设法解决了这个问题。我的导航页面没有ViewModel。坦率地说,我认为这是一个没有任何逻辑的虚拟页面,我不需要ViewModel。

我一添加页面,一切都很好