按钮有两种颜色和背景图像

时间:2012-05-06 22:43:21

标签: android xml button background background-image

有没有办法为按钮设置颜色背景图片?我想要一个带有透明.png的绿色按钮,但似乎你只能拥有一个或另一个。

4 个答案:

答案 0 :(得分:12)

(不要)使用ImageView

将您的绿色按钮背景图像设置为背景,将透明png设置为src。您可以将选择器应用于背景,就像使用按钮一样......

编辑:实际上已经为此制作了ImageButton,您应该使用它。滑倒了我的脑海。

答案 1 :(得分:3)

试试这段代码对我有用:)

<ImageButton
android:id="@+id/button5"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
...
android:src="@drawable/settingbtn"
android:background="@drawable/red_color"
     />

答案 2 :(得分:1)

使用透明度绘制单独的图像并保存图像。要显示正在按下,聚焦等图像实例的不同图像,请使用以下方法。

使用带有背景的图像按钮作为xml如下所示:

 `<?xml version="1.0" encoding="utf-8"?>
 <selector xmlns:android="http://schemas.android.com/apk/res/android">
 <item android:state_pressed="true"
       android:drawable="@drawable/imagewhenpressed" /> <!-- pressed -->
 <item android:state_focused="true"
       android:drawable="@drawable/imagewhenfocused" /> <!-- focused -->
 <item android:drawable="@drawable/defaultimage" /> <!-- default -->
 </selector>`

注意:这里有三个图片-imagewhenpressed.png,imagewhenfocused.png&amp; defaultimage.png和这个xml应该放在drawable目录中。应将ImageButton背景分配给此xml的filename,如android:background="@drawable/xmlfilename"

答案 3 :(得分:1)

改为使用ImageButton

您可以像普通一样设置背景,在src属性中可以选择图像。 如果图像太小或太大,您还可以使用scaleType属性。