繁体   English   中英

使本机启动画面取决于用户的喜好,而不是 flutter 中的设备主题

[英]Make native splash screen depend on user prefer, not on device theme in flutter

我为深色和浅色模式添加了本机启动屏幕,因此当我的设备处于夜间模式时,启动屏幕的背景颜色为黑色,而当设备处于浅色模式时,颜色为白色。

问题是:

我想让颜色取决于用户,如果用户的设备处于夜间模式并且他在我的应用程序中选择灯光模式,则启动屏幕的背景颜色必须为白色

更多解释:

如果设备处于夜间模式且我的应用程序主题为浅色模式,则启动屏幕背景颜色应为白色(取决于设备上的应用程序主题)

我怎样才能从本机代码中实现这一点?

您可以将以下标记添加到本机初始屏幕 xml 中的根元素。

android:forceDarkAllowed="false"

此标志将忽略系统暗模式。

现在要为单个活动启用/禁用夜间模式,您可以在调用 super.onCreate 方法之前在 OnCreate 方法中使用以下代码:

getDelegate().setLocalNightMode(AppCompatDelegate.MODE_NIGHT_NO); // Disabled
getDelegate().setLocalNightMode(AppCompatDelegate.MODE_NIGHT_YES); // Enabled

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM