Почему заголовки страниц внутри TabbedPage по умолчанию прописные на устройствах Android - PullRequest
1 голос
/ 28 октября 2019

Почему заголовки страниц по умолчанию используются в верхнем регистре в TabbedPage?

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

Эта ссылка на документацию TabbedPage показывает примеры, где заголовки страниц с вкладками имеют название Заголовок в кодено прописными буквами на интерфейсе. Как видно ниже:

<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>

Schedule page

1 Ответ

4 голосов
/ 28 октября 2019

Если вы посмотрите на исходный код специфичного для Android средства визуализации на GitHub, вы увидите, что Xamarin.Forms внутренне использует элемент управления TabLayout для создания вкладок. Это также означает, что вы застряли с тем, что разработчики Android указали в качестве внешнего вида текста заголовка, в этом случае по умолчанию все заглавные буквы.

Однако это можно настроить, создав пользовательский эффект. это изменяет соответствующее свойство в нативном элементе управления. Взгляните на эту статью о том, как создать пользовательский эффект на Android, и вы, вероятно, найдете свойство (свойства) для изменения из следующего SO вопроса .

Обычно, когда вы видите что-то подобное, это потому, что Xamarin.Forms просто использует собственный элемент управления с некоторыми изменениями или без них. В этот момент вы захотите создать и создать эффект или даже пользовательский рендерер, чтобы изменить внешний вид на более глубокий уровень в соответствии с вашими потребностями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...