我一直在我的所有drawable中使用主题属性,但我发现在21之前不支持
是否有我可以使用的方法
<shape android:shape="rectangle"
xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="?attr/background_1" />
<corners android:radius="@dimen/button_corner_radius" />
我的布局中有这样的画面吗?非常感谢。不知道现在该做什么
答案 0 :(得分:1)
您无法从xml文件中执行此操作。正如您在此answer中所看到的,您必须创建与要使用的背景颜色一样多的不同资源文件。在您的情况下,如果我们调用您的文件shape_drawable.xml:
style.xml中的
<attr name="shape_drawable" format="reference"/>
然后在实际主题中:
// Theme X
<item name="shape_drawable">@drawable/shape_drawable_x</item>
// Theme Y
<item name="shape_drawable">@drawable/shape_drawable_y</item>
其中shape_drawable_x将使用纯色x,shape_drawable_y将使用纯色y。
然后,在您实际使用drawable的地方:
android:src="?attr/shape_drawable"