2015-09-09 146 views
1

我使用的库为日期和时间pikers(https://github.com/wdullaer/MaterialDateTimePicker)。无法覆盖android颜色

而且有一种说法:

“另外,您也可以在主题采摘通过覆盖在你的项目中的颜色资源mdtp_accent_color和mdtp_accent_color_dark”

所以我重写这两种颜色与我自己的,但是当我运行应用程序它仍然库颜色,但不是我的。

也许某个人有同样的问题,或者你有一些想法为什么会发生?

编辑: 这是我如何重写颜色:

<color name="mdtp_accent_color">#08395b</color> 
<color name="mdtp_accent_color_dark">#062d48</color> 
+1

你是如何“重写”图书馆的颜色吗? –

+0

请看看,我更新我的问题 –

回答

1

这里是在图书馆查找颜色的顺序:

  1. 颜色在java中设置
  2. 如果5.0 +:颜色设置在android.R.attr.colorAccent
  3. 颜色设置在R.attr.colorAccent
  4. 颜色R.color.mdtp_accent_color

设置如果R.attr.colorAccent在应用程序中定义的(例如,由于您使用的是最新的程序兼容性支持库的版本),你不能使用R.color.mdtp_accent_color覆盖它。 如果要使用不同的颜色,我建议你在Java代码中实例化的对话框时设置:

tpd.setAccentColor(myColor); 
+0

hm,我使用4.0 v,并且hevan't在我的颜色中设置了R.color.colorAccent ... tpd.setAccentColor(myColor);工作正常,但自动定义的深色有时看起来很难看:) 如果你想添加tpd.setAccentColorDark(myColor); - 我认为这将是完美的! –

+0

我更新了答案,以反映它正在查看主题属性,而不是颜色名称。 – wdullaer