我想扩展Android的小按钮样式。我可以内联:
<Button android:id="@+id/myButton"
style="?android:attr/buttonStyleSmall"
android:layout_alignParentRight="true"
android:layout_gravity="right"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:textSize="10dp"
android:text="Click Here"/>
但是为了可重用性,我想将这些样式转换为自定义样式。如何添加buttonStyleSmall
(或Widget.Button.Small
?)作为样式的父级?在我的自定义样式 XML 中是这样的:
<style name="RightLink" parent="?android:attr/buttonStyleSmall">
<item name="android:layout_alignParentRight">true</item>
<item name="android:layout_gravity">right</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_width">wrap_content</item>
<item name="android:paddingLeft">2dp</item>
<item name="android:paddingRight">2dp</item>
<item name="android:textSize">10dp</item>
</style>
使用该样式的按钮声明:
<Button android:id="@+id/myButton"
style="@style/RightLink"
android:text="Click Here"/>
编辑
使用下面 Lukas 描述的正确语法(@android:attr/buttonStyleSmall
用作父级),我仍然看到两者之间的区别:
添加了带有 buttonStyleSmall 样式和内联样式的按钮:
以 buttonStyleSmall 为父的自定义样式:
我错过了什么?