如何解决强制特定 Xamarin 应用程序的主题
在我的 Xamarin 项目 (Xamarin 4.8) 中,有许多结构复杂的页面。还有很多位图资源,专为白色背景等设计。
当用户在 iOS 上设置深色主题时,页面外观变得奇怪且无法使用。在 Android 上,应用程序看起来没有任何变化。
现在我没有时间在每个页面上的每个控件上手动设置颜色属性,我想为应用程序(Android 和 iOS 平台)强制实施浅色主题,以便以后有时间重新设计整个应用程序。
In an article 我读到 Xamarin 5 提供了一种方法,将这行代码放入 Application 类中:
App.Current.UserAppTheme = OSAppTheme.Light;
我尝试过这种方式(将项目迁移到 Xamarin 5 并调用此代码),但它不起作用。深色主题的 iOS 应用程序看起来无法使用。
在这一点上我有什么选择?是否有一种相对简单的方法可以为 iOS 应用强制实施 Light 主题?
解决方法
根据@SushiHangover 和@JackHua-MSFT 的建议,我使用了以下方法并成功(XCode 12.3):
在 plist.info
中,我应该添加值为 UIUserInterfaceStyle
的键 Light
。无论为设备设置了什么主题,这都会为应用强制执行 Light
主题。
我添加到 plist.info
的最终 xml 代码如下所示:
<key>UIUserInterfaceStyle</key>
<string>Light</string>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。