如何在代码中为图像按钮设置透明背景?


83

我可以layout.xml使用以下方法将ImageButton背景设置为透明:

android:background="@android:color/transparent"

我如何使用Java代码完成同一件事?就像是ib.setBackgroundColor(???);


1
询问的thx,只需要那条透明的线:)
CularBytes 2015年

Answers:


153

这是简单的操作,仅需将背景色设置为透明

    ImageButton btn=(ImageButton)findViewById(R.id.ImageButton01);
    btn.setBackgroundColor(Color.TRANSPARENT);

30

在您的xml中执行

<ImageButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/imageButtonSettings"
        android:layout_gravity="right|bottom"
        android:src="@drawable/tabbar_settings_icon"
        android:background="@android:color/transparent"/>


11

不要使用TRANSAPENT或NULL布局,因为这样button(或通用视图)在单击时将不再突出显示!!!

我遇到了同样的问题,最后我从Android API找到了正确的属性来解决该问题。它可以应用于任何视图

在按钮规格中使用它

android:background="?android:selectableItemBackground"

这需要API 11


2
这正是我所需要的。使用nulltransparent禁用按钮反馈。
aks

4

这样尝试

ImageButton imagetrans=(ImageButton)findViewById(R.id.ImagevieID);

imagetrans.setBackgroundColor(Color.TRANSPARENT);

要么

在res / layout的.xml文件中包含此内容

android:background="@android:color/transparent 

3

只需在您的imagebutton布局中使用它

android:background="@null"

使用

 android:background="@android:color/transparent 

要么

 btn.setBackgroundColor(Color.TRANSPARENT);

不能提供完美的透明度


2

如果要使用androidR

textView.setBackgroundColor(ContextCompat.getColor(getActivity(), android.R.color.transparent));

并且不要忘记将支持库添加到Gradle文件

compile 'com.android.support:support-v4:23.3.0'
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.