我最近偶然发现了一个通过XML项目模拟android按钮样式的解决方案。问题是,我必须为我使用的每个按钮创建一个不同的xml文件。 (我正在制作一个有16种颜色的绘画应用程序,所以有16个以上的按钮)我试图将他的XML项目嵌入到一个样式,一个可绘制的,甚至是另一个项目中,这样我就可以将所有16个左右的按钮保存在一个文件中。当我尝试调试它时,我不断收到“错误:解析XML时出错:未绑定的前缀”。我是android编程领域的新手,这是我用Java编写的第一个应用程序。 (我正在使用麻省理工学院的应用程序发明者软件来规划我的应用程序。设计,简单的编码和排序)。这是我的风格。 (注意:这不是整个XML文件,只是我用于按钮的xml。
<style name="test">
<item android:state_pressed="true">
<shape>
<gradient
android:startColor="@color/yellow"
android:endColor="@color/gold"
android:angle="270" />
<stroke
android:width="3dp"
android:color="@color/grey5" />
<corners
android:radius="3dp" />
<padding
android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
</item>
<item android:state_focused="true" >
<shape>
<gradient
android:endColor="@color/gold"
android:startColor="@color/black"
android:angle="270" />
<stroke
android:width="3dp"
android:color="@color/grey5" />
<corners
android:radius="3dp" />
<padding
android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
</item>
<item>
<shape>
<gradient
android:endColor="@color/blue"
android:startColor="@color/lime"
android:angle="270" />
<stroke
android:width="3dp"
android:color="@color/grey5" />
<corners
android:radius="3dp" />
<padding
android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
</item>
</style>
当它(减去样式标签)放在它自己的文件中并用作按钮的背景属性时,它工作正常,但当它“嵌入”到一个样式时它不再起作用。有没有一个简单的解决方案将我的所有按钮配置放在一个文件中?
答案 0 :(得分:0)
尝试定义父样式(例如您发布的样式)并定义扩展父样式所需的其他样式。
<style name="yourChildStyle" parent="yourParentStyle">
... Here go attributes specific to your child style
</style>