【问题标题】:Setting Android theme background color using SharedPreferences使用 SharedPreferences 设置 Android 主题背景颜色
【发布时间】:2015-06-29 07:41:45
【问题描述】:

我在 .xml 文件中定义了一个主题,并应用于 Manifest 文件中的应用程序标签。我还在 SharedPreferences 中存储了一个十六进制颜色值。有什么办法可以将此颜色设置为主题的背景?

【问题讨论】:

    标签: android colors background themes setting


    【解决方案1】:

    您无法更改主题,因为它已经“编译”,但您可以在它们之间切换。为此,您可以查看HERE

    【讨论】:

    • 问题是我从用户那里动态获取颜色值,所以之前无法定义。
    • 如果您这样做,您可能需要使您的原始主题透明,因为它是在您的 onCreate 调用之前绘制的,您会看到从原始主题到您的颜色的颜色变化。没有最用户友好的。
    【解决方案2】:

    您可以更改窗口或 Activity 的背景颜色和颜色 值可以来自使用 setBackgroundColor 的 SharedPreferences 值。

    如果你想要改变背景颜色的是Activity窗口, 您可以执行以下操作:

    getWindow().getDecorView().setBackgroundColor(getResources().getColor(android.R.color.holo_red_light));
    

    只需将 android.R.color.holo_red_light 替换为 XML 文件中的值即可。

    【讨论】:

      猜你喜欢
      • 2012-07-31
      • 1970-01-01
      • 2013-08-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多