c# - 未安装带有 AppThemeBinding 的 Xamarin.Forms 应用程序
问题描述
我的主题绑定有问题。我正在创建应用程序并在两部手机上对其进行测试:
- Xiaomi Redmi Note 7,Android 10,系统主题-黑色
- 小米红米4X,安卓版本7.1.2,系统主题-白色
当我这样设置颜色时:
<Button BackgroundColor="#000"
没问题,只是Redmi Note 7上的颜色和4X上的颜色不一样,因为主题。但是当我这样设置颜色时:
<Button BackgroundColor="{AppThemeBinding Light=#000, Dark=#fff}"
我有问题。在 Redmi 4X 上一切正常,但在 Redmi Note 7 上没有安装应用程序,只是冻结。没有 AppThemeBinding 一切正常。
在我的项目中,我使用:
- 最低安卓版本:5.0(API 级别 21 - Lollipop)
-目标安卓版本:10.0(API 级别 29 - Q)
当我在 Redmi 4X 上运行应用程序时,没有错误/警告。我使用 Visual Studio Professional 2019 版本 16.8.3。
.NET 框架版本 4.8.03761
我已经安装了 SDK Android 9.0 - Pie, Android 10.0 - Q
所以也许你知道什么是问题。
还在荣耀9S上测试,安卓10版本,系统主题——黑色;一切正常,应用程序已安装。也许问题只在一部手机上。
解决方案
Xamarin.Forms 必须满足以下要求才能响应系统主题更改:
Xamarin.Forms 4.6.0.967 或更高版本。iOS 13 或更高版本。Android 10 (API 29) 或更高版本。UWP 内部版本 14393 或更高版本。macOS 10.14 或更高版本。
推荐阅读
- python-3.x - 如何通过python中的子类将父类变量共享给第三类?
- sql - 每个用户仅选择 3 行 - SQL 查询
- c# - VS警告:由'disposable'创建的一次性对象永远不会被释放,为什么?
- javascript - 从网站中删除除 X 之外的所有元素
- sql - 当 SQL Server 中的列值不是增量时,如何循环使用表值
- python - 熊猫合并/加入
- angular - 如何修复 HTTP POST 中的跨域读取阻塞 (CORB) 以使用授权码获取令牌
- mysql - 从多个表中获取具有条件的最新值
- azure - 将设备孪生属性从 azure iot Central 发送到设备
- python - 如何将传说保留在情节中?