2010-03-09 47 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