问题标签 [android-dark-theme]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2179 浏览

android - 如何根据android系统设置禁用日夜主题的自动更改?

到目前为止,我从 google 了解到,您必须使用Theme.Appcompat.Daynight或 Material Daynight 主题才能使您的应用程序支持暗模式。并且您需要在valuesvalues-night目录中使用不同的styles.xml 。我不愿意让我的应用支持深色主题。但是,当我将 android 系统主题(从通知面板)更改为暗色时,我的应用程序变暗了。我使用Theme.Appcompat.Light作为基本主题,没有为我的应用程序支持暗模式做任何事情,但我的应用程序仍然变暗。我第一次使用cardview,不知道是不是这个原因,因为我是android编程的新手。您的小小帮助将非常受欢迎。请在此处查看屏幕截图:

系统暗模式关闭

系统暗模式开启

0 投票
1 回答
490 浏览

android - AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM 不工作

编辑:在底部更新

我在应用程序中调用它onCreateAppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM)

然后,当我进入设备设置(设置 -> 显示 -> 夜间模式(开关:开/关))时,我将恢复我的应用程序,但未应用主题。无论我是在设备设置中打开还是关闭夜间模式,都不会应用主题。

我还添加了一个断点,并且我检查了以下内容是否返回我false,即使设备设置中的暗模式已打开(注意:应用程序是在暗模式关闭的情况下启动的)。

application's当我从设备设置更改主题时,资源似乎没有更新。

出于调试目的,我在 Application 类中覆盖了以下函数:

它被调用了。

编辑:看起来这是导致问题的原因。在 Application 类中有这个:

如果我删除上面的代码,它就可以工作。

0 投票
3 回答
5329 浏览

java - Android - theme.xml 和 theme.xml(night)

在较新版本的 Android Studio 中,在 values 目录中有 theme.xml 和 theme.xml(night) 可以指出它们之间的区别吗?它会取代styles.xml 吗?

0 投票
2 回答
893 浏览

android-studio - MIUI 11/12 主题切换导致 LifeCycleException、ClassCastException

由于 MIUI 11/12 使用其自己的暗模式自定义实现,使用以下代码会导致 ClassCastException 和 Activity 生命周期异常,因为 DefaultNightMode 和 LocalNightMode 始终未指定,即 -100 而不是 0 或 1。

如果有人专门为 MIUI 11/12 构建了小米设备的解决方法。请帮帮我。

使用的代码:

错误原因:

0 投票
1 回答
20 浏览

android - Android 主题工具栏的主题不正确

尝试将暗模式添加到我的应用程序。我大部分时间都在那里,在进行所需的更改后,大多数事情都按我的预期工作,但是我的工具栏有问题。我错过了什么?

工具栏问题和布局的屏幕截图

0 投票
1 回答
34 浏览

android - 在<10个安卓设备上处理暗模式的策略

所以我在我的应用程序中实现了暗模式,并且它运行良好,遵循 Android 10 和 11 设备上的系统范围设置。

有没有办法让 Android 10 之前的设备的用户选择浅色或深色主题?我的 MinSDK 是 21

如果可能的话,在设置​​中考虑一个开关以允许选择,然后我使用:

AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES)

(这个对吗?)

我还想我应该在 Android 10 及更高版本的设备上隐藏这个开关,让系统处理浅色模式?对于这种事情,我应该遵循最佳实践吗?我建议的工作方式正确吗?

谢谢

0 投票
0 回答
196 浏览

android - Android通知文本跨度颜色在暗模式下不起作用

它适用于浅色主题,但在深色模式下,所有颜色都会消失。我知道自定义视图,但是没有自定义视图有没有能力做到这一点?

0 投票
0 回答
89 浏览

android - 即使设置了相同的颜色,我的应用状态栏看起来也比应用栏亮

即使设置了相同的颜色,android 应用的状态栏也会比应用栏更亮。

我的应用程序有白天和黑夜(暗)模式的两个主题。有趣的是,当在浅色主题模式(非夜间模式)下查看应用程序时,状态栏和操作栏/应用程序栏看起来完全一致(相同颜色)。但是在夜间模式(暗模式)下查看时,状态栏的颜色看起来更浅。

我在两个主题中都为 colorPrimary 和 colorPrimaryDark 使用了完全相同的颜色,其他主题设置也相同。(请仔细查看图像,因为它是深灰色的阴影,很难区分状态栏颜色和应用程序条颜色)

我能做些什么来纠正这个。我希望状态栏和应用程序栏的颜色相同,因为它在应用程序的灯光模式下。

我希望这个问题是可以理解的。谢谢!!暗模式状态栏灯光模式状态栏

0 投票
2 回答
411 浏览

android - 错误:找不到正确的提供者高于此消费者小部件

我想在 Drawer 内使用带有 Switch 的 Dark/Light 主题。你可以在我的“drawerDosyasi.dart”中看到“Switch”。但首先我想在我的主页(Anasayfa)上用 SwitchListTile 编写代码。

两个问题:

1-我现在有这个错误

错误:在此消费者小部件上方找不到正确的提供者

这可能是因为您使用了BuildContext不包括您选择的提供者的 。有几种常见的场景:

  • 您尝试读取的提供程序位于不同的路径中。

    提供者是“范围的”。因此,如果您在路由中插入提供程序,那么其他路由将无法访问该提供程序。

  • 您使用的BuildContext是您尝试读取的提供程序的祖先。

    确保 Consumer 在您的 MultiProvider/Provider 下。这通常发生在您创建提供程序并尝试立即读取它时。

    例如,而不是:

    考虑builder像这样使用:

2-我无法将开关移动到抽屉。给出关于转为 null 的错误。所以我希望能够在 DrawerHeader 中使用 Switch() 更改暗/亮模式

谁能修复我的代码?我是新手,两天解决不了问题。

anasayfa.dart

抽屉Dosyasi.dart

主题.dart

0 投票
1 回答
87 浏览

android - 我希望能够使用 DrawerHeader 处的 Switch 更改暗/亮模式

我希望能够使用 DrawerHeader 处的 Switch 更改暗/亮模式。但我遇到了一个错误。

错误:在此消费者小部件上方找不到正确的提供者 这可能是因为您使用了BuildContext不包括您选择的提供者的 Provider。有几种常见的场景:

  • 您尝试读取的提供程序位于不同的路径中。提供者是“范围的”。因此,如果您在路由中插入提供程序,那么其他路由将无法访问该提供程序。
  • 您使用的BuildContext是您尝试读取的提供程序的祖先。确保 Consumer 在您的 MultiProvider/Provider 下。这通常发生在您创建提供程序并尝试立即读取它时。

anasayfa.dart

抽屉Dosyasi.dart

主题.dart

发布规范.yaml

应用程序看起来像这样

在此处输入图像描述