📜  appcompatdelegate.setdefaultnightmode(appcompatdelegate.mode_night_yes) 不工作 - Java (1)

📅  最后修改于: 2023-12-03 14:39:18.577000             🧑  作者: Mango

Android AppCompatDelegate 主题设置

AppCompatDelegate 是 Android Support 库提供的一个用于设置应用主题的类。通过使用 AppCompatDelegate,开发者可以轻松地支持使用 Toolbar,使用 最新的 Material Design 主题,以及通过设置夜间模式来提高应用程序的体验。

设置日间模式和夜间模式

调用 AppCompatDelegate.setDefaultNightMode() 方法设置应用程序的日间主题和夜间主题。这个方法接收一个值,可以是下列值之一:

  • AppCompatDelegate.MODE_NIGHT_NO:强制使用日间模式
  • AppCompatDelegate.MODE_NIGHT_YES:强制使用夜间模式
  • AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM:遵循系统设置(默认值)

示例如下:

// 强制使用夜间模式
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
注意事项

当设置主题时,必须在 super.onCreate() 之前调用 AppCompatDelegate.setCompatVectorFromResourcesEnabled(true) 方法启用向量图标支持。

此外,必须在 super.onCreate() 之前调用 AppCompatDelegate.setDefaultNightMode() 方法。

参考链接