Prism Xamarin表单ToolbarItem出现两次

时间:2018-02-11 18:42:29

标签: xamarin xamarin.forms prism

我正在使用Prism进行Xamarin Forms应用程序开发。

可能是因为我是Prism和Xamarin Froms的新手,因为我面临导航的基本问题。

让我先介绍一下我的实施细节,然后再讨论手头的问题。

  1. 我有一个MasterDetail页面(名为Home),这是我的主页面。 母版页中有一些菜单项。其中一个是合作伙伴。
  2. 单击合作伙伴菜单项,调用NavigationService.NavigateAsync(“Navigation / Partner”)方法。 “NavigationService”的类型为“INAVigationService”。
  3. 这会打开一个名为“Partner”的页面,它是一个标签页(TabbedPage)。第一个标签是名为“PartnerAll”的内容页面。
  4. PartnerAll页面包含listview。单击列表视图项,通过调用NavigationService.NavigateAsync(“Navigation / PartnerDetails”,参数,false,true)打开“PartnerDetails”新页面;
  5. 在PartnerDetails页面上,我添加了一个名为“取消”的工具栏。
  6. 问题:当“PartnerDetails”页面打开时,“取消”项目会显示两次,如屏幕截图所示: screenshot of partner details page with two cancel buttons

    我哪里错了。我该怎么做才能让它发挥作用?

    请协助。

    致以最诚挚的问候,Ankur Jain

2 个答案:

答案 0 :(得分:1)

您正在将两个NavigationPage推送到导航堆栈。这将导致两个导航栏。您可以在截图中看到背面和汉堡菜单图标。

答案 1 :(得分:0)

您应该只传入目标网页的标识符字符串,而不是将另一个NavigationPage实例推送到堆栈

这样做NavigationService.NavigateAsync(PartnerDetails);