Android CardView应用主题

时间:2016-08-03 07:45:09

标签: android android-layout android-support-library android-theme android-cardview

有没有办法将主题应用到Cardview?我不想将风格应用到我正在创建的每个视图中。

这是我的 CardView

<style name="Custom.Widget.CardView" parent="CardView">
    <item name="cardBackgroundColor">@color/card_backgroundColor</item>
    <item name="cardCornerRadius">12dp</item>
    <item name="cardUseCompatPadding">true</item>
    <item name="contentPadding">4dp</item>
</style>

我的 styles.xml

no resource found that matches the given name: attr 'Cardview'

我想将样式添加到 themes.xml ,以便它将应用于每个Cardview,但我不知道如何。是否可以从支持库获得视图?

当我将以下内容添加到 themes.xml 时,我收到警告:<item name="Cardview">@style/Custom.Widget.CardView</item>

{{1}}

2 个答案:

答案 0 :(得分:2)

有可能,我也花了很长时间才找到。如果在整个应用中使用了 MyStyle 样式,则下面的示例将橙色背景应用于所有名片视图。

themes.xml 中:

<style name="MyStyle" parent="Theme.AppCompat">
    ...

    <item name="cardViewStyle">@style/MyStyle.Cardview.Orange</item>
</style>

<!-- CardView -->
<style name="MyStyle.Cardview.Orange" parent="CardView">
    <item name="cardBackgroundColor">#F3921F</item>
</style>

答案 1 :(得分:0)

我也在我的项目中使用它,没问题,可能是你没有在build.gradle中添加它

compile 'com.android.support:cardview-v7:25.2.0'