我的问题类似于" 如何将CardView属性放入样式中 ",但我需要更深入.
我正在使用AppCompat主题,我的样式看起来像
style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="colorPrimary">@color/toolbar_color</item>
<item name="android:listViewStyle">@style/CustomListView</item>
</style>
Run Code Online (Sandbox Code Playgroud)
我为CardView创建了单独的样式
<style name="CustomCardView" parent="CardView">
<item name="cardBackgroundColor">@color/card_background</item>
<item name="cardCornerRadius">@dimen/card_corner</item>
</style>
Run Code Online (Sandbox Code Playgroud)
我可以把它贴在主要风格上吗?
有没有办法将主题应用于 Cardview?我不想将样式应用于我正在创建的每个视图。
这是我现在的CardView:
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/view_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="@style/Custom.Widget.CardView">
<-- I don't want to define the style every time -->
</android.support.v7.widget.CardView>
Run Code Online (Sandbox Code Playgroud)
还有我的styles.xml
<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>
Run Code Online (Sandbox Code Playgroud)
我想将样式添加到themes.xml以便将其应用于每个 Cardview,但我不知道如何。支持库中的视图甚至可能吗?
当我将以下内容添加到themes.xml 时,我收到一条警告:no resource found that matches the given name: attr 'Cardview'
<item name="Cardview">@style/Custom.Widget.CardView</item>
Run Code Online (Sandbox Code Playgroud) android android-layout android-theme android-support-library android-cardview