【问题标题】:Why are Page titles inside TabbedPage defaulted to uppercase on Android devices为什么选项卡式页面中的页面标题在 Android 设备上默认为大写
【发布时间】:2020-02-24 01:22:44
【问题描述】:

为什么TabbedPage 中的页面标题默认为大写?

https://docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/navigation/tabbed-page

TabbedPage 文档的此链接显示了标签页标题在代码中为 Titlecase 但在 UI 上为大写的示例。 如下图:

<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
            xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
            xmlns:local="clr-namespace:TabbedPageWithNavigationPage;assembly=TabbedPageWithNavigationPage"
            x:Class="TabbedPageWithNavigationPage.MainPage">
    <local:TodayPage />
    <NavigationPage Title="Schedule" IconImageSource="schedule.png">
        <x:Arguments>
            <local:SchedulePage />
        </x:Arguments>
    </NavigationPage>
</TabbedPage>

【问题讨论】:

  • 可能只有最初的 PO 或开发人员会知道。
  • 嗯,这是android原生行为,如果我没记错的话可以改!

标签: android xamarin xamarin.forms


【解决方案1】:

如果您查看 GitHub 上特定于 Android 的渲染器的源代码,您可以看到 Xamarin.Forms internally usesTabLayout 控件来创建选项卡。这也意味着你会被 Android 开发人员指定的任何标题文本的外观所困扰,在这种情况下,默认情况下它都是大写的。

但是,这仍然可以通过创建修改本机控件上的相关属性的自定义效果来自定义。看看this article,了解如何在 Android 上创建自定义效果,您可能应该从以下SO question 中找到要修改的属性。

通常,当您看到这样的内容时,这是因为 Xamarin.Forms 只是在使用本机控件,对其进行了一些修改或未对其进行修改。此时,您将需要创建效果甚至自定义渲染器,以在更深层次上更改外观以满足您的需求。

【讨论】:

  • 谢谢!这些链接很有帮助,答案也很容易理解。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-30
  • 1970-01-01
  • 2013-12-14
  • 1970-01-01
  • 2016-07-07
  • 1970-01-01
相关资源
最近更新 更多