在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中指定的值在自定义样式中使用,或者维度值是否只能直接应用于视图?
答案 0 :(得分:0)
我知道答案已经晚了,但是对于那些正在搜索这种错误的人来说。父母有一个错误的引用。只需从styles.xml
更改以下行<style name="my_button" parent="@android:style/Widget.Button">
到
<style name="my_button">
此外,您可以将my_button的所有常用属性添加到样式中的引用中,然后将以下行添加到主题的样式。通过这样做,您可以跳过活动的xml中的参考 android:buttonStyle 。
<item name="android:buttonStyle">@style/my_button</item>