Eclipse如何将按钮背景颜色更改回默认值

时间:2013-03-03 02:53:33

标签: android button

按钮的默认背景颜色是什么。 请以html颜色代码的形式告诉我背景颜色。

谢谢!

3 个答案:

答案 0 :(得分:1)

Android基本上有不同的主题。主题决定了应用于窗口小部件的样式。主题在paths

路径下的themes.xml文件中定义
  

Android的SDK \平台\机器人-15 \数据\ RES \值\的themes.xml

现在我们需要在themes.xml中找到Button定义的样式。当你为它,你会发现类似的东西:

<!-- Button styles -->

<item name="buttonStyle">@android:style/Widget.Button</item>

这意味着主题将样式Widget.Button应用于按钮。现在寻找风格

  

Widget.Button

此样式将在

中定义
android-sdk\platforms\android-15\data\res\values\styles.xml

您可以在themes.xml中找到类似Widget.Button

的内容
<style name="Widget.Button">
    <item name="android:background">@android:drawable/btn_default</item>
    <item name="android:focusable">true</item>
    <item name="android:clickable">true</item>
    <item name="android:textAppearance">?android:attr/textAppearanceSmallInverse</item>
    <item name="android:textColor">@android:color/primary_text_light</item>
    <item name="android:gravity">center_vertical|center_horizontal</item>
</style>

现在上面代码中重要的是行

<item name="android:background">@android:drawable/btn_default</item>

这意味着有一个名为btn_default的drawable设置为按钮背景。

现在我们需要在android-sdk \ platforms \ android-15 \ data \ res下的一个可绘制文件夹中找到一个名为btn_default。*的文件。

经过一番搜索,你会发现文件android-sdk \ platforms \ android-15 \ data \ res \ drawable \ btn_default.xml

它将包含如下内容:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_window_focused="false" android:state_enabled="true" android:drawable="@drawable/btn_default_normal" />
<item android:state_window_focused="false" android:state_enabled="false" android:drawable="@drawable/btn_default_normal_disable" />
<item android:state_pressed="true" android:drawable="@drawable/btn_default_pressed" />
<item android:state_focused="true" android:state_enabled="true" android:drawable="@drawable/btn_default_selected" />
<item android:state_enabled="true" android:drawable="@drawable/btn_default_normal" />
<item android:state_focused="true" android:drawable="@drawable/btn_default_normal_disable_focused" />
<item android:drawable="@drawable/btn_default_normal_disable" />

所以这是一个选择器drawable。此选择器根据按钮状态选择不同的背景。例如,按下的按钮将具有与未按下的按钮不同的背景。

因此我们需要查看Button的默认(非按下)状态。

<item android:state_enabled="true" android:drawable="@drawable/btn_default_normal" />

所以这里应用了以下drawable:

btn_default_normal

我们现在需要在android-sdk \ platforms \ android-15 \ data \ res下的一个可绘制文件夹中找到一个名为btn_default_normal。*的文件。

这可以是图像或像btn_default_normal.xml这样的xml文件。

现在,您将在不同的可绘制文件夹中找到多个名为“btn_default_normal.9.png”的文件,以用于不同的分辨率。

所以现在您知道没有涉及特定十六进制代码的颜色。它是一个9补丁图像(btn_default_normal.9.png)。

希望这有帮助。

答案 1 :(得分:1)

您可以将背景颜色设置为@null。

答案 2 :(得分:0)

简单 - 转到布局\查看代码并删除android:#color code; - )