Adnroid中消除ImageButton默认背景

翻译 2015年11月20日 10:09:59

最近在Android开发中使用到了ImageButton这个控件,一般而言我们有两种设置其图片的方法,一种是设置控件的Src属性,一种是设置控件的Background属性,但是这两种方法有什么差别呢?于是上网搜索了一下,总结如下:

1、基本概念区别

src属性指按钮表层显示图片属性,background属性指按钮底层背景属性。当使用android:src属性时,图片不会拉伸(除非额外设置了Scale Type);而是用android:background属性时,图片默认会填充整个背景,

举例而言,如果你的ImageButton控件是50*50大小,而你的图片资源是30*30大小,那么src属性设置后会居中显示30*30大小的图片,而background属性则会将图片拉伸到50*50大小,造成图片的变形、模糊等问题。

2、代码编写区别

//使用src属性时,在代码中修改显示内容
btn_start.setImageDrawable(getResources().getDrawable(R.drawable.play));

//使用background属性时,在代码中修改显示内容
btn_start.setBackground(getResources().getDrawable(R.drawable.pause));

3、消除ImageButton默认的灰白色背景

当我们使用src属性设置按钮的图片的时候,ImageButton默认给我们的按钮添加了一个灰白色的背景框,造成视觉上非常别扭,我们可以用如下的方法(原文链接)进行修改:

一种方法是将ImageButton的背景改为所需要的图片。如:android:background="@drawable/XXX"
第二种方法就是将ImageButton背景改为透明,这个方法更常用:

在XML里;

   <ImageButton android:background="#00000000" .../>   

   注解:颜色和不透明度 (alpha)值以十六进制表示法表示。任何一种颜色的值范围都是 025500ff)。对于 alpha,00 表示完全透明,ff表示完全不透明。表达式顺序是“aabbggrr”,其中“aa=alpha”(00 到 ff);“bb=blue”(00 到ff);“gg=green”(00 到 ff);“rr=red”(00 到 ff)。半透明则为
"#e0000000"。例如,如果您希望对某叠加层应用不透明度为 50%的蓝色,则应指定以下值:7fff0000


在代码里:设置背景图片透明度

View v =findViewById(R.id.content);//找到你要设透明背景的layout 的id
v.getBackground().setAlpha(100);//0~255透明度值
举报

相关文章推荐

Android UI设计——ImageView和ImageButton控件

ImageView  ImageView是用来在界面上展示图片的一个控件。它可以让我们的界面变的丰富多彩。 它的使用很简单: <ImageView android:i...

UI控件之Button(按钮)和ImageButton(图像按钮)

(一)概述 Button普通按钮跟ImageButton图像按钮的用法基本类似,至于图片相关的则和后面的ImageView相同,所以本节只对Button的用法进行讲解,另外Button是TextVi...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

ImageButton去边框&Button或者ImageButton的背景透明

在ImageButton中载入图片后,很多人会觉得有图片周围的白边会影响到美观,其实解决这个问题有两种方法 一种方法是将ImageButton的背景改为所需要的图片。如:android:backgr...

android 设置Button或者ImageButton的背景透明

(1)修改配置文件 android:id="@+id/btnAppMore"     android:layout_width="wrap_content"     ...

android-设置/去除背景,透明度

Button或者ImageButton的背景设为透明或者半透明半透明 透明颜色和不透明度 (alpha) 值以十六进制表示法表示。任何一种颜色的值范围都是 0 到 255(00 到 ff)。对于 a...

adnroid selector 组件的状态显示该状态对应的背景图片

selector相当于图片选择器,在res下新建个drawable文件夹,把组件的背景设成对应你建的xml文件名下面是我做的一个简单的例子项目结构图见附件 btn.xml代码:Xml代码 xml v...

Android使用xml定义带背景Button(解决ImageButton不能加文字的问题)

虽然Android给我们提供了ImageButton 这一组件来实现带有自定义图片背景的Button,但是ImageButton有一个缺陷就是不能添加文字而如下的方法则可以综合二者的优势. ...

Android中设计具有背景图的按钮—ImageButton的焦点及事件处理

实现步骤:   第一步:建立Android 工程:ImageButtonDemo。                 ...

《安卓应用开发学习》——关于ImageButton图片背景的设置问题

直接进入主题:为什么ImageButton的背景图片有多余的空白部分,就是周围的四四方方的框?     ImageButton拖进布局以后会让我们选择一个图片作为背景,可以是系统自带,也可以是我们事...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)