1

我有一个带有按钮的应用程序,它以椭圆的方式呈圆形,所以当我把它们放在 imageButton 上时,图像按钮看起来像这样

在此处输入图像描述

但我希望 ImageButton 只显示图像而不是 Button 的边框

有任何想法吗?

4

4 回答 4

3

ImageButton正是用于此 - 当您想要常规按钮内的图像时。如果您不想要按钮背景,只需使用ImageView, 或常规Button,将背景更改为您自己的按钮图形(尽管在这种情况下第一个选项可能是最好的,因为您的按钮文本似乎是图片)。

如果您出于某种原因确实必须使用ImageButton,请将background属性设置为透明颜色或 @null 以摆脱边框。

于 2012-04-13T14:52:35.673 回答
2

使用 ImageView 而不是 ImageButton。基本上,它们是相同的,只是 ImageButton 将图像放在现有按钮内。

于 2012-04-13T14:52:19.650 回答
2

为此,您需要制作自己的自定义按钮,

试试这个。在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_new_default" />    
<item android:state_pressed="true" 
    android:drawable="@drawable/btn_new_default_pressed" />
<item android:state_focused="true" android:state_enabled="true"
    android:drawable="@drawable/btn_new_default" />
<item android:state_enabled="true"
    android:drawable="@drawable/btn_new_default" />
</selector>

创建圆形图像,您希望按钮具有不同的状态,即按下按钮时,默认等,并将它们放在可绘制文件夹中,上面代码中提到的名称或更改上面可绘制的名称。

完成后将 btn_default.xml 设置为您的普通按钮的背景。

于 2012-04-13T14:57:56.917 回答
0

如果按钮是在 xml 中定义的,您可以将 android:background 属性设置为“@null”。如果它是在代码中创建的,请使用按钮的 setBackgroundDrawable() 方法,并将 null 作为参数。

于 2012-04-13T15:03:50.317 回答