应用主题后,Android按钮看起来很奇怪

时间:2012-08-10 16:57:48

标签: android android-layout actionbarsherlock

我在将按钮应用到主题时遇到问题。没有使用主题一切看起来很好,你可以在这个截图上看到: http://i47.tinypic.com/2czyctv.jpg

在我应用我的主题后,它看起来像这样: http://i48.tinypic.com/w03s6x.png

颜色很好,但按钮的高度错误,上部按钮和水平线之间的空间也消失了。实际上,主题按钮应该看起来像他们大小的未加工按钮,因为我唯一想改变的是颜色。

值/的themes.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">

<style name="Theme.KIT.Styled" parent="Theme.Sherlock.Light.DarkActionBar">

    <item name="actionBarStyle">@style/ActionBar</item>
    <item name="android:actionBarStyle">@style/ActionBar</item>
    <item name="android:buttonStyle">@style/Button</item>

</style>

<style name="ActionBar" parent="Widget.Sherlock.Light.ActionBar.Solid.Inverse">
    <item name="background">@drawable/actionbar_background_shape</item>
    <item name="android:background">@drawable/actionbar_background_shape</item>
</style>

<style name="Button" parent="@android:style/Widget.Button">
    <item name="android:background">@drawable/kit_button</item>
</style>
</resources>

抽拉/ kit_button.xml:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
    android:state_enabled="false"
    android:drawable="@drawable/kit_button_background_shape" />
<item
    android:state_pressed="true"
    android:state_enabled="true"
    android:drawable="@drawable/kit_button_background_shape" />
<item
    android:state_focused="true"
    android:state_enabled="true"
    android:drawable="@drawable/kit_button_background_shape" />
<item
    android:state_enabled="true"
    android:drawable="@drawable/kit_button_background_shape" />
</selector>

抽拉/ kit_button_background_shape.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<gradient 
    android:startColor="@color/KIT_GREEN"
    android:endColor="@color/KIT_GREEN_LIGHT"
    android:angle="90"
    android:centerX="0.5"
    android:centerY="0.5" />
</shape>

我希望s.o.可以帮我。抱歉我的英语不好......

1 个答案:

答案 0 :(得分:0)

您的按钮填充曾经在9补丁背景中声明,GradientDrawable不会为您执行此操作。您需要在主题中添加android:padding属性或使用9补丁。