2010-03-09 48 views
119

我已经应用到我的整个应用程序样式的Android应用程序的所有按钮:如何应用样式

的AndroidManifest.xml:

<application android:theme="@style/ApplicationStyle" android:icon="@drawable/icon" android:label="@string/app_name"> 

在我styles.xml:

<style name="ApplicationStyle" parent="android:Theme"> 
    <item name="android:button">@style/CKButton</item> 
</style> 
<style name="CKButton" parent="android:style/Widget.Button"> 
    <item name="android:textSize">19sp</item> 
    <item name="android:layout_margin">0dip</item> 
    <item name="android:background">#ff0000</item> 
</style> 

但是风格没有得到应用。

对不起,如果我只是在ApplicationStyle使用的假名字 - Item,但我不知道在哪里找对象名称和简单的假设,即android:button适用于所有的按钮。

+0

请看看我的答案上http://stackoverflow.com/a/26625931/1065835 – 2014-10-29 08:46:19

回答

180

对于Android样式,您引用Android在R.attr中设置的预设属性。在这种情况下,它看起来像你想参考android:buttonStyle。我认为这会工作:

<style name="ApplicationStyle" parent="android:Theme"> 
    <item name="android:buttonStyle">@style/CKButton</item> 
</style> 
+1

上帝,我一直在寻找的年龄这样的功能。不知道为什么按钮的textColor不遵循主题的textColor属性。非常感谢! – 2012-08-14 14:05:14

+0

任何一个没有如何做到这一点的微调? – Mike6679 2013-01-25 11:23:23

+26

只需注意一点:如果CKButton样式不继承@android:style/Widget.Button,则该按钮将停止工作。 – James 2013-01-29 17:58:48