如何仅在xamarin上使用Light Theme?

问题描述

在电话上,我有一个黑暗的主题。我如何只能在Android上使用Light主题

我更新了Visual Studio,现在我的程序主题与手机上的主题相同,电话上的屏幕暗了,我希望程序变亮,请帮忙。

我尝试过

Application.Current.UserAppTheme = OSAppTheme.Light

但不起作用

解决方法

为了响应Xamarin.Forms而进行的系统设计更改,必须满足以下要求:

  • Xamarin.Forms4.6.0.967或更高版本
  • Android 10(API 29)或更高版本

然后您可以运行此代码;

Application.Current.UserAppTheme = OSAppTheme./*Light,Dark or Unspecified*/;

当您在Android 9上运行devive时,必须在应用程序主题中进行设置;

<application android:label="MyApp" 
             android:theme="@android:style/Theme.Material.Light">
</application>

请查看this repository,以了解更多详细信息。

enter image description here

,

无论手机是否黑暗,您都可以使用AppThemeBinding来设置浅色主题。

从下面的链接下载源文件并进行一些更改。 https://docs.microsoft.com/en-us/samples/xamarin/xamarin-forms-samples/userinterface-systemthemesdemo/

当您在手机上设置暗模式并希望程序变亮时,您可以更改xaml来设置亮主题,如下所示:

更改: ContentPage BackgroundColor

 BackgroundColor="{AppThemeBinding Light={StaticResource LightPageBackgroundColor},Dark={StaticResource DarkPageBackgroundColor}}">

收件人:

 BackgroundColor="{AppThemeBinding Light={StaticResource LightPageBackgroundColor},Dark={StaticResource LightPageBackgroundColor}}">

更改::网格BackgroundColor

 <Grid BackgroundColor="{AppThemeBinding Light={StaticResource LightPrimaryColor},Dark={StaticResource DarkPrimaryColor}}">

收件人:

 <Grid BackgroundColor="{AppThemeBinding Light={StaticResource LightPrimaryColor},Dark={StaticResource LightPrimaryColor}}">