问题标签 [theme-daynight]

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 投票
0 回答
161 浏览

android - 将 DayNight 主题应用于所选片段

我有一个应用程序,它由两个与ViewPager. 左边的有自定义背景,右边的有基本的浅色主题(白色背景,黑色文本颜色等)。现在我想DayNight在右侧实现主题fragment(而不是具有自定义背景的主题)。我试图设置DayNight为 AndroidManifest 中的主要活动,但它改变了整个应用程序 - leftfragment和 right fragment

显现:

样式.xml:

是否可以将DayNight主题设置为其中之一?非常感谢您的建议。

0 投票
1 回答
3488 浏览

android - 在android中使用DayNight主题的状态栏颜色

我正在将主题 Theme.AppCompat.DayNight.NoActionBar 应用到我的应用程序中。

在浅色主题中,我希望状态栏为白色,在深色主题中,我希望它为深色。

我不能让状态栏变白,字母变暗,反之亦然。

这是我的风格:

这是我的颜色文件:

我已经尝试添加参数 <item name="android:statusBarColor">@color/primary</item>
但我仍然得到相同的东西,状态栏是白色的,状态栏文本也是白色的。

在浅色主题中显示带有深色字母的白色状态栏的方式是什么,在深色主题中反之亦然?

0 投票
0 回答
171 浏览

android - Android 应用主题更换顺畅

我正在开发一个可以使用白天和黑夜主题的项目。

我正在改变主题

夜间主题:

日主题:

但是要查看该活动/应用程序的更改,我需要重新启动应用程序或重新创建该活动,recreate()但这需要时间并且它不像whatsApp或Telegram那样流畅。

那么如何才能顺利地更改主题更改时看起来很漂亮的应用程序主题呢?

0 投票
1 回答
1995 浏览

android - 使用 AppCompatDelegate.setDefaultNightMode() 设置 DayNight 主题不适用于 FragmentActivity

我有点疑惑。我在我的应用程序中使用了 DayNight 主题(使用AppCompatDelegate.setDefaultNightMode()),但无法让它在我的MainActivity. ( MainActivitywhich extends FragmentActivity) 看起来从未设置为深色主题 -它始终保持在浅色主题中。

我尝试直接在我的 MainActivity 中设置主题:

但这不起作用。

我已经使用 ?attr/colorReference 正确设置了布局文件中的所有颜色。有谁知道这里出了什么问题?

编辑: 我的 styles.xml 如下:

0 投票
0 回答
97 浏览

android - 如何在 MODE_NIGHT_FOLLOW_SYSTEM 上刷新 AppWidget?

当用户更改日/夜模式时,我正在尝试自动刷新 appWidget 的布局。

我将“白天布局”放入布局文件夹,将“夜间布局”放入布局夜间文件夹。

这是刚安装 AppWidget 时的良好布局……但当我更改日/夜模式时,布局永远不会改变。

在我的应用程序类中设置。

请问如何检测系统的Day/Night模式变成AppWidget来刷新呢?

0 投票
2 回答
589 浏览

android - 如何为 BottomSheetDialog 设置 DayNight 主题

我正在迁移到新的 android DayNight 主题

我已经ThemeOverlay.AppCompat.Dark(Light).ActionBar换成ThemeOverlay.AppCompat.DayNight.ActionBar

ThemeOverlay.AppCompat.Dark(Light)ThemeOverlay.AppCompat.DayNight

一切看起来都很好。除了我不能对 BottomSheetDialog 做同样的事情。BottomSheetDialog 是否存在 DayNight 主题?

0 投票
1 回答
141 浏览

java - 切换日/夜模式时如何为组件(工具栏、搜索栏、操作栏等)设置自定义颜色?

我正在尝试通过为白天模式和夜间模式设置自定义主题来更改应用程序组件的某些颜色,如下所示:

在 values/styles.xml(日间模式)中:

values/styles.xml 中的相同文件(夜间)

我想更改 UI 某些部分的颜色(搜索栏、工具栏、操作栏标题、浮动按钮等),但我不知道每个元素对应的颜色,我有点疯狂地到处搜索对于任何组件的棘手解决方案,我也需要更改颜色。关于在哪里检查所有这些,是否有任何指南或良好的视觉示例?例如,现在我需要很长时间才能弄清楚如何更改弹出菜单背景或操作栏菜单背景,因为菜单文件中没有属性。我是android开发的新手,所以任何关于这方面的指导都会非常受欢迎。

0 投票
1 回答
654 浏览

android - 带有 DayNight 主题的 BiometricPrompt

DayNight Theme 有四种情况:

  1. 设备 -模式,应用程序 -模式
  2. 设备 - LIGHT模式,应用程序 - LIGHT模式
  3. 设备 - DARK模式,应用程序 - LIGHT模式
  4. 设备 - LIGHT模式,应用程序 - DARK模式

第一种和第二种情况是正常的。不幸的是,在第三种和第四种情况下并不像预期的那样。BiometricPrompt 对话框获取设备的 ui 模式。我想为 BiometricPrompt Dialog 应用应用程序 UI 模式。您可以在下面看到问题:

设备 - DARK模式,应用程序 - LIGHT模式 设备 - **DARK** 模式,应用程序 - **LIGHT** 模式

设备 - LIGHT模式,应用程序 - DARK模式 设备 - **LIGHT** 模式,应用程序 - **DARK** 模式

0 投票
0 回答
446 浏览

java - Android Studio - 在一个“recreate()”中更改日/夜主题和语言区域?

我有一个非常奇怪的问题,如果我更改语言并重新创建它会将白天/夜晚切换回系统默认值,而当我更改白天/夜晚时,它会将语言更改回系统默认值。所以,如果我把这些函数放在 OnCreate 事件中,那将是一个死循环。如果我单独使用这些功能,它们会按预期工作。但我不能同时改变两者。

这就是我更改语言的方式:

这就是我更改日/夜设置的方式:

它们都已放置OnCreate,我已经尝试在前后放置它们,super.onCreate(savedInstanceState)但结果是一样的。基本上正在发生的事情是一个无限循环,它们都相互影响。语言在重新创建时将深色主题更改为亮,而深色主题在重新创建时将语言更改回英语。所以它永远发生。有没有办法同时改变两者并只重新创建一次?谢谢!

编辑:另外,我尝试recreate()在设置语言后删除。但是如果主题在系统设置中已经是黑暗的,那么它将不会重新创建并且不会出现语言更改。这不是一个理想的解决方案。我希望有一种方法可以同时改变两者,而且recreate()只改变一次。或者,如果有另一种更合适的方法来处理这个问题。因为很多应用都有这个功能。再次感谢你!

0 投票
1 回答
100 浏览

android - 将 applyDayNight() 与自定义主题覆盖相结合?

androidx您可以轻松地在日/夜模式之间切换。例如:

切换主题时:

现在,假设我想为白天或夜间主题添加一个小自定义:

我该如何做到这一点?