将主题设置为 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>
我可以重现你的问题。这似乎是一个错误,你可以尝试在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
});