问题描述
如何在 xamarin 表单中将一个内容页面从客户端项目导航到另一个内容页面?
How to navigate one content page to another content page from client project in xamarin forms?
我已经以不同的方式在每个平台上实现了推送通知.我需要从当前内容页面导航到另一个内容.
I have done implementing push notification in each platform in different way. I need to navigate to another content from current content page.
我尝试在 GCMService 的 OnMessage 方法中使用以下代码.我的问题是第二个导航内容页面的构造函数被调用并成功调试.但是我的屏幕仍然显示当前页面而不显示第二个导航内容页面.
i try to use below code in GCMService's OnMessage method. My Problem is Second navigation content page's constructor are called and debug successfully. but my screen still display current page not to display second navigation content page.
App.Current.MainPage.Navigation.PushAsync (new SecondNavigationContentPage());
推荐答案
主页"必须是导航页面才能使用推送弹出导航进行导航.你有几个选择.
"Main Page" has to be a navigation page in order to navigate with the push pop navigation. You have a couple of options.
选项 1:
用您的新页面替换 MainPage 并使用内容页面.
Swap out MainPage with your new page and use content pages.
App.Current.MainPage = your new content page
选项2:(可能是更好的选择)
Option 2: (Probably the better option)
使 App.Current.MainPage 成为 NavigationPage 而不是 ContentPage,然后将您的第一个内容页面推送到它.当您需要转到第二个内容页面时,请使用推送导航架构.
Make App.Current.MainPage a NavigationPage rather than a ContentPage then push your first content page to it. When you need to go to the second content page use the push navigation architecture.
App.Current.MainPage = new NavigationPage;
App.Current.MainPage.Navigation.PushAsync(Page1);
App.Current.MainPage.Navigation.PushAsync(Page2);
文档:http://developer.xamarin.com/guides/cross-platform/xamarin-forms/controls/pages/
更新
请注意,由于这个答案已经出现了更好的导航方式,例如 docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/... app shell routing.
Note that since this answer much better ways have come along for navigation such as docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/… app shell routing.
其他选择是 Prism MVVM 或您自己的视图模型定位器 prismlibrary.com/docs/viewmodel-locator.html.使用这种内置导航的缺点是它缺少视图模型来查看模型导航,并且依赖于页面到页面,这会导致不必要的视图耦合以及简单笨拙的导航.
Other choices are Prism MVVM or your own view model locator prismlibrary.com/docs/viewmodel-locator.html. The short coming in using this built in navigation is it lacks view model to view model navigation and depends on page to page which causes unwanted coupling of views and just plain clunky navigation.
这篇关于如何以 xamarin 形式将一个内容页面从客户端项目(IOS/Android)导航到另一个内容页面?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!


大气响应式网络建站服务公司织梦模板
高端大气html5设计公司网站源码
织梦dede网页模板下载素材销售下载站平台(带会员中心带筛选)
财税代理公司注册代理记账网站织梦模板(带手机端)
成人高考自考在职研究生教育机构网站源码(带手机端)
高端HTML5响应式企业集团通用类网站织梦模板(自适应手机端)