问题标签 [android-darkmode]

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 回答
2514 浏览

android - Jetpack 在深色模式下撰写 TextField 文本颜色

我一直在尝试使用 Jetpack compose,我注意到虽然Text当您切换到深色模式时文本颜色会正确更新,但文本颜色TextFieldOutlinedTextField仍然是顽固的黑色。标签和提示的颜色正确。

确定字段的默认文本样式是MaterialTheme.typography.body1我已更新我的应用程序主题以包含此解决方法:

但是,如果这是解决方案,我将不得不为每种排版样式都这样做,并且感觉应该是自动的。那么我做错了什么,或者这是在正式发布之前将解决的问题之一?

这是我的实际 Composable 之一(包含在我的主题中):

0 投票
3 回答
270 浏览

android - 使用 AppCompatDelegate 更改深色主题后无法检测到是否处于活动状态

我正在尝试实现一个选项,让用户指定他们是否希望应用程序根据系统设置(深色或浅色,即设备是否设置为使用深色模式)加载主题,但我也提供覆盖系统设置的可能性。

第一次启动应用程序时,我可以很容易地找出这个设置是如何使用这个线程中指定的东西的

然而,在使用以下主题强制主题之后,这些似乎没用:

更改主题后,我无法再获取系统设置,因为它总是返回“darkmode on”,除非我再次强制它为 light 主题,但在这里它会再次返回“darkmode off”!:(

任何想法,如何获得系统设置?

提前致谢,
FF

0 投票
0 回答
24 浏览

android - 检测是否为 Android Night/Dark 模式启用了计划

我想知道是否启用了时间表以自动切换日/夜主题(即基于日落时间)。这可能吗?我正在构建一个库,因此用户交互不是一种选择。

检测夜间或黑暗主题当前是否处于活动状态很容易,这不是这个问题的主题。

用例:与可访问性相关的分析库。

0 投票
3 回答
897 浏览

android - 应用程序恢复/重新启动时的 Android 手动暗模式导致应用程序主题无法正常工作

您好,我在手动管理暗模式时遇到了一个大问题,所以我会直接解决它:

该应用程序如何工作

在应用程序启动时,如果用户选择启用暗模式或保持亮模式(默认),第一个活动会检查 SharedPreferences,然后它会根据用户偏好进行相应的更改:

编辑:正如 CSmith 所要求的,这是在活动中调用主题选择器的时间

这是主题选择器方法

到目前为止一切顺利,每当它启动时,它都会将其主题设置为用户选择的主题,并且一切正常。

问题发生在哪里

显然,这个问题似乎只发生在我的 Xiaomi Mi A2 lite (Android 10) 上,因为我已经在 Pixel 2 (Android 11) 和模拟器 (Android 10) 上进行了测试,当应用程序从最近的应用程序恢复时一切正常普通的。

问题

重现我的问题的一致方法是:假设我的应用程序设置为手动亮模式,并且我的系统处于暗模式。我打开应用程序(无论是呆在家里活动还是去另一个活动都会导致同样的问题),然后我进入系统设置并更改系统语言。当我从最近的应用程序选项卡重新打开应用程序时,它看起来应用程序试图重新启动,但它在中途崩溃(不确定,因为 logcat 没有显示任何有关崩溃的信息,应用程序也没有显示任何有关崩溃的对话框)并且当它启动时它会自动设置它的主题到系统主题(所以在我的例子中它进入暗模式)。

此时的问题是,一些原本应该在深色模式下看到的文本现在有了浅色模式主题,使它们与黑色背景融为一体;应用程序中用于从暗模式更改为亮模式的开关保持正确设置(显示未启用暗模式),但应用程序处于暗模式。如果重新启动应用程序,一切都会恢复正常,并且应用程序在浅色主题中正确显示。

当应用程序长时间处于后台时,我无法重现该问题,但我认为它也可能发生。

感谢您的时间!

0 投票
0 回答
78 浏览

node.js - 纯 Node.js 中的 Android 暗模式检测

我想从 termux 检测运行 Node.js 的 android 设备上的暗模式。

我也不能使用电子、phantom.js 或任何其他“渲染”库。

可能吗?

如果不是,我将接受使用 termux 获取设备主题的任何其他可能性。

编辑:我在 termux-api 的 github 页面上打开了一个请求

0 投票
5 回答
2809 浏览

android - 在 Android 中以编程方式禁用暗模式

我想以编程方式基于标志禁用应用程序中的暗模式。我在黑暗模式的 values-night 文件夹中定义了自定义颜色。

我尝试了以下解决方案来禁用暗模式,但没有奏效。

AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO);

有没有办法在不删除 values-night 文件夹的情况下以编程方式禁用暗模式?

0 投票
1 回答
26 浏览

android - 在布局中使用属性

我想在我的布局中使用暗模式。我试过这个:

attr.xml:


主题.xml:


布局.xml:

但我收到了这个错误:

还有另一种方法吗?

0 投票
0 回答
111 浏览

android - 为 textColor edittext 禁用暗模式

禁用了应用程序的暗模式

但是在输入的情况下,当你需要移除 Span 时,textСolor 被重置为白色,变得不可见。

示例:文本:可编辑?开始:诠释

例如,如果您将样式 textColorPrimary 更改为红色,则颜色不会改变。但是如果你把它往暗的方向做,那么这个颜色就会变成浅红色。

0 投票
1 回答
440 浏览

android - 如何为设备的暗模式和亮模式固定背景颜色

您好,我想知道如何为 ui 元素设置固定颜色,无论 android 设备处于亮模式还是暗模式

在我的情况下,存在一些问题,设备的浅色模式下的视图设置为我在浅色模式下给定的颜色背景,但是当我将设备切换到深色模式时,视图将其颜色更改为我没有设置的深灰色

有什么方法可以解决这个问题,还有关于我将来如何使用每个 ui 元素做到这一点的任何提示

这是我的代码

BottomSheet.xml

rounded_corner_bottomsheetline

色标

输出 //暗模式

如您所见,视图是我设置的深灰色,我设置的颜色是#e2e2e2

在此处输入图像描述

输出//正常或轻模式

在此处输入图像描述

0 投票
1 回答
1098 浏览

android - 如何修复设备暗模式和精简模式下的图像视图图标颜色变化

您好,我试图在 imageview 中包含图标,但是当开启暗模式时,颜色很暗,而在精简模式下,它显示为白色,我希望两种模式下的颜色都是白色

矢量// 图标

ImageView // 作为背景包含的图标

theme.xml // litemod/正常

theme.xml // 黑暗模式/夜晚

颜色.xml