【问题标题】:Push Page but keep hamburger-menu-icon推送页面但保留 hamburger-menu-icon
【发布时间】:2017-01-17 19:55:26
【问题描述】:

我有一个 MasterDetailPage,它的 DetailnavigationPage1。我想将navigationPage2 推送到navigationPage1 上,但要保持菜单图标显示。我该怎么做?

我已经尝试过PushAsyncPushModalAsync。我尝试使用nonNavigationPage2(留下 an 图标,但不是汉堡,左箭头)。

【问题讨论】:

  • 当使用 MasterDetail 模式并将页面推送到导航堆栈时,本机行为是显示箭头。那么,为什么要改变行为呢?请记住,Xamarin.Forms 旨在针对每个平台的本机行为。因此,如果您真的想改变行为,您可能应该考虑编写自己的自定义渲染器。否则,不要推送到导航堆栈,而是将Detail Property 设置为您要显示的Page
  • @Demitrian 我想要完成的是让用户在母版页的一个“页面”内使用后退按钮,但能够轻松转到母版页的另一页而不会丢失第一个子页面的堆栈。但我想,根据您的回答,开箱即用并不支持。谢谢。
  • 所以你想要一个箭头和一个汉堡包?不,当前版本的 SDK 不支持这一点,因为 Xamarin.Forms 针对每个平台的本机行为,而您要求的内容超出了该范围。
  • 您仍然可以在推送的页面上从左向右滑动访问母版页。

标签: c# xamarin xamarin.forms


【解决方案1】:

您可以使用以下代码显示汉堡包而不是返回按钮:

  NavigationPage.SetHasBackButton(nextPage, false);
  ((NavigationPage)page).PushAsync(nextPage);

【讨论】:

    【解决方案2】:

    尝试使用此代码:

    YourMasterDetailPage.Detail = new NagivationPage(new page1);
    

    当你点击另一个时,你会再次使用

    YourMasterDetailPage.Detail = new NagivationPage(new page2);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-07
      • 2017-11-24
      • 2012-04-28
      • 2018-02-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多