【问题标题】:Is there a constant for the current "system foreground" color in Android?Android中当前的“系统前景”颜色是否有常数?
【发布时间】:2019-07-16 13:27:28
【问题描述】:

在 Windows (UWP / WPF) 中,我有 WindowsTextBrush、ActiveCaptionBrush 等常量。 当我将其设置为 TextBox 的颜色并且用户更改他的系统颜色(例如从白底黑到黑底绿)时,我的 TextBox 的颜色会自动改变。

我在使用 Xamarin 的 Android 上找不到这样的东西。 我的案例 - 我创建了一个主屏幕小部件,上面有一些文字。当我将系统设置更改为“暗模式”时,我主屏幕上的所有启动器图标都会变成白色标签颜色。相反 - 如果我更改为“Light Mode”,它们会变成黑色。

我希望我的 Widget-Text 也能适应这种颜色。在 Windows 中是否有类似的常量,或者我必须做什么才能实现这一目标?

【问题讨论】:

  • 对您有帮助吗?

标签: android xamarin xamarin.android


【解决方案1】:

DayNight 主题已添加到 AppCompat 并获得了支持 库 v23.2.0

我们可以使用 Theme.AppCompat.DayNight 来引用主题。 DayNight 主题允许根据时间在明亮(白天)和黑暗(夜晚)主题之间切换。请记住,它支持 API 14+。任何更低,它默认为 Light 主题。

所以你可以根据系统DayNight模式改变主题,当然这需要你做DayNight的配置。

您可以参考:https://blog.iamsuleiman.com/daynight-theme-android-tutorial-example/ https://medium.com/androiddevelopers/appcompat-v23-2-daynight-d10f90c83e94

【讨论】:

  • 我不想切换到白天/黑夜。我说的是暗模式9to5google.com/2018/12/17/android-dark-mode-theme-pie
  • @ManniAT 我知道,但是每个选项都直接映射到 AppCompat.DayNight 模式之一:Light - MODE_NIGHT_NO,Dark - MODE_NIGHT_YES,Set by Battery,Saver - MODE_NIGHT_AUTO_BATTERY,System default - MODE_NIGHT_FOLLOW_SYSTEM 切换主题,请致电AppCompatDelegate.setDefaultNightMode()。你可以参考Dark Theme,你也可以在你的链接中看到
猜你喜欢
  • 2012-01-30
  • 2012-11-29
  • 2021-12-21
  • 1970-01-01
  • 2020-12-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-21
相关资源
最近更新 更多