我可以通过调用fun main(args: Array<String>) {
TestObj
TestObj
}
object TestObj {
var count = 0
init {
fun howManyTimes() {
println(++count)
}
}
}
和UI_MODE_NIGHT_MASK
来获得resources.configuration.uiMode
。
我需要听这个变量,并在接收新值时更改主题。
我想我可以添加一个Configuration.UI_MODE_NIGHT_MASK
,所以我可以做一个BroadcastReceiver
并注册一个类似于getSystemService(A_CONSTANT_FROM_Context)
的主题回调。但是我只能在文档中找到这些:在主题样式上扩展ConnectivityManager.NetworkCallback
并使用Theme.MaterialComponents.DayNight
。问题dark them config已获得引用此文档的公认答案。
答案 0 :(得分:1)
要了解<Root level="info">
<AppenderRef ref="File"/>
<AppenderRef ref="Console"/>
</Root>
的更改,请在您的uiMode
中添加configChanges
属性:
AndroidManifest.xml
然后在您的活动中侦听配置更改:
<application
...>
<activity
android:name=".YourActivity"
...
android:configChanges="uiMode"/>
</application>