新的AppCompat-v7(v21)和属性'android:前缀

时间:2014-12-13 10:13:17

标签: android android-appcompat android-actionbar-compat

使用新的AppCompat-v7(v21)在我看来,不再需要声明 属性两次,一次没有android:前缀,一次使用android:前缀,以自定义ActionBar。
也许,我认为,因为Action Bar样式已经从 Base.V7.Theme.AppCompat 继承,然后在所有库的值中没有android:前缀重叠-vXX xml文件 是这样还是我弄错了?感谢

修改
可能是因为AppCompat-v7(v21)总是使用android.support.v7.widget.Toolbar制作ActionBar,即使它在Lollipop设备上运行也是如此?

1 个答案:

答案 0 :(得分:1)

对于仅在API 21(Lollipop)上可用的属性,您应该创建values-v21 /目录,您可以在其中放置'android'和'appcompat',例如

  <item name="colorAccent">#276181</item>
    <item name="colorPrimary">@android:color/transparent</item>
    <item name="colorPrimaryDark">#276181</item>

    <item name="android:colorPrimary">#276181</item>
    <item name="android:colorPrimaryDark">#276181</item>

在值目录(21之前)中,您只会放置“colorAccent”而只会放入没有安装前缀的“colorPrimary”(因为它不可用,但appcompat知道它)。