安卓12通过代码实现全局夜间模式
Android 12提供了一种简单的方法来实现全局夜间模式,即使用AppCompat DayNight主题。
以下是实现全局夜间模式的步骤:
- 在App的主题中使用AppCompat DayNight主题
在styles.xml中定义App的主题,使用AppCompat DayNight主题:
<style name="AppTheme" parent="Theme.AppCompat.DayNight">
<!-- Customize your theme here. -->
</style>
- 在Activity中启用夜间模式
在需要使用夜间模式的Activity中,调用以下代码启用夜间模式:
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
- 在Activity中禁用夜间模式
在需要禁用夜间模式的Activity中,调用以下代码禁用夜间模式:
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO);
- 在Application中设置默认夜间模式
在Application的onCreate()方法中,调用以下代码设置默认夜间模式:
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM);
这将跟随系统的夜间模式设置,如果系统启用夜间模式,则App也会启用夜间模式。
注意:如果你的Activity中使用了自定义主题,则需要在自定义主题中继承AppCompat DayNight主题。可以参考以下代码:
<style name="CustomTheme" parent="Theme.AppCompat.DayNight">
<!-- Customize your theme here. -->
</style>
以上就是实现全局夜间模式的步骤。在Android 12中,使用AppCompat DayNight主题可以很容易地实现全局夜间模式,无需编写复杂的代码
原文地址: https://www.cveoy.top/t/topic/chxq 著作权归作者所有。请勿转载和采集!