【问题标题】:Xamarin Forms: how to hide back button title?Xamarin Forms:如何隐藏后退按钮标题?
【发布时间】:2015-12-12 13:47:24
【问题描述】:

在我的 Xamarin Forms iOS 应用程序中,前一页名称也与所有页面中的后退按钮一起出现。有什么办法可以隐藏上一页的标题吗?

【问题讨论】:

  • 我的应用程序是 Xamarin 表单而不是 xamarin 本机 ios 应用程序。

标签: xamarin xamarin.ios xamarin.forms


【解决方案1】:

如果你使用导航页面,你可以为返回按钮标题使用一个空字符串:

NavigationPage.SetBackButtonTitle(this, ""); //Empty string as title

据我所知,它会影响导航堆栈上的下一页(“this”之后的页面将有一个空的后退按钮标题)。不要引用我的话。

您可以完全隐藏“后退”按钮:

NavigationPage.SetHasBackButton(this, false);

另一种选择是使用模态页面,将Navigation.PushAsync(yourPage) 替换为Navigation.PushModalAsync(yourPage),它将模态显示页面。

仅供参考,后退按钮会自动填充上一页的 Title 属性(如果未设置 Title,它将默认为 Back)。

【讨论】:

  • 在 NavigationPage 类中找不到 SetHasBackButton 方法。
  • @RenzoCiot 这是一个静态方法,以防万一您尝试在实例上调用它。
【解决方案2】:

还有一种解决方法可以在整个应用程序中全局隐藏后退按钮标题。 在 FinishedLaunching 方法中添加您的 AppDelegate.cs:

UIBarButtonItem.Appearance.SetBackButtonTitlePositionAdjustment (new UIOffset (-100, -60), UIBarMetrics.Default);

【讨论】:

    【解决方案3】:

    添加到 Cuckooshka 答案,后退按钮标题在横向模式下隐藏为

    UIBarButtonItem.Appearance.SetBackButtonTitlePositionAdjustment (new UIOffset (-100, -60), UIBarMetrics.LandscapePhone);
    

    【讨论】:

      【解决方案4】:

      如果您从 Page1 导航到 Page2,那么在 Page1 中:

              public Page1()
              {
                  NavigationPage.SetBackButtonTitle(this, "");
                  InitializeComponent();
              }
      

      如果一切正确,在Page2中你将看不到导航栏的标题。

      【讨论】:

        猜你喜欢
        • 2016-10-26
        • 2022-09-24
        • 1970-01-01
        • 2016-09-29
        • 1970-01-01
        • 2021-10-07
        • 2015-11-11
        • 1970-01-01
        • 2017-05-04
        相关资源
        最近更新 更多