Android 12提供了一种简单的方法来实现全局夜间模式,即使用AppCompat DayNight主题。

以下是实现全局夜间模式的步骤:

  1. 在App的主题中使用AppCompat DayNight主题

在styles.xml中定义App的主题,使用AppCompat DayNight主题:

<style name="AppTheme" parent="Theme.AppCompat.DayNight">
    <!-- Customize your theme here. -->
</style>
  1. 在Activity中启用夜间模式

在需要使用夜间模式的Activity中,调用以下代码启用夜间模式:

AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
  1. 在Activity中禁用夜间模式

在需要禁用夜间模式的Activity中,调用以下代码禁用夜间模式:

AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO);
  1. 在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主题可以很容易地实现全局夜间模式,无需编写复杂的代码

安卓12通过代码实现全局夜间模式

原文地址: https://www.cveoy.top/t/topic/chxq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录