在
Android中,我有以下内容:
dimens.xml
<dimen name="buttonMarginRL">10dp</dimen> <dimen name="buttonMarginTB">5dp</dimen>
style.xml
<style name="my_button" parent="@android:style/Widget.Button"> <item name="android:textSize">16sp</item> <item name="android:layout_marginLeft">@dimen/buttonMarginRL</item> <item name="android:layout_marginRight">@dimen/buttonMarginRL</item> <item name="android:layout_marginTop">@dimen/buttonMarginTB</item> <item name="android:layout_marginBottom">@dimen/buttonMarginTB</item> </style>
我将它添加到按钮视图中:
someFragment.xml
<Button android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/button" style="@style/my_button" />
但利润率没有得到应用.将10dp和5dp直接放入my_button样式时,它按预期工作.在Android中是否可以使用dimens.xml中指定的值在自定义样式中使用,或者维度值是否只能直接应用于视图?
解决方法
我知道答案已经很晚了,但是对于那些正在搜索这种错误的人来说.父母有一个错误的引用.只需从styles.xml更改以下行
<style name="my_button" parent="@android:style/Widget.Button">
至
<style name="my_button">
此外,您可以将my_button的所有常用属性添加到样式中的引用中,然后将以下行添加到Theme的样式中.通过这样做,您可以跳过活动的xml中的引用android:buttonStyle.
<item name="android:buttonStyle">@style/my_button</item>