将主题设置为 Theme.MaterialComponents.Light.DarkActionBar 后,我的按钮角半径在 .NET Maui 中看起来为白色

问题描述 投票:0回答:1

将主题设置为 Theme.MaterialComponents.Light.DarkActionBar 后,我的 Button 控件在按钮角上显示为白色时遇到问题。

环境:.NET Maui,目标为 .NET 8, 平台:安卓

<Button Text="Login" BackgroundColor="Green" HorizontalOptions="FillAndExpand" FontSize="20" HeightRequest="50" VerticalOptions="EndAndExpand" CornerRadius="40" ></Button>

android xamarin.android maui .net-8.0
1个回答
0
投票

我可以重现你的问题。这似乎是一个错误,你可以尝试在github上报告它。

对于解决方法,您可以使用

Theme.MaterialComponents.Light.DarkActionBar.Bridge
而不是
Theme.MaterialComponents.Light.DarkActionBar

官方文件说:

如果您无法将主题更改为从 Material Components 主题继承,则可以从 Material Components Bridge 主题继承。

但是当我使用

Theme.MaterialComponents.Light.DarkActionBar.Bridge
时按钮的文本位置是错误的。因此,您可以在 App.cs 中添加以下代码以使按钮的文本居中。

Microsoft.Maui.Handlers.ButtonHandler.Mapper.AppendToMapping(nameof(Button), (handler, view) =>
        {
#if ANDROID
            handler.PlatformView.TextAlignment = Android.Views.TextAlignment.Center;
#endif
        });
© www.soinside.com 2019 - 2024. All rights reserved.