需求

有时会需要改变布局颜色透明度,比如设置控件(如View,Button等)的透明度,有3种方法。

实现方法

java代码实现

text = (TextView) findViewById(R.id.text);
text.getBackground().setAlpha(12);

TextView未设置背景色可以直接使用text.setAlpha(12)方式设置其透明度

setAlpha()的括号中可以填0–255之间的数字。数字越大,越不透明。

注意点:在5.0以上系统时,有些机型会出现莫名其妙的颜色值不起作用,变成透明了,也就是用此方法会导致其他共用一个资源的布局(例如:@color/white)透明度也跟着改变。
比如text用上述方法设置成透明后,项目中,其他用到text颜色值的控件,都变成透明了。
原因:在布局中多个控件同时使用一个资源的时候,这些控件会共用一个状态,例如ColorState,如果你改变了一个控件的状态,其他的控件都会接收到相同的通知。这时我们可以使用mutate()方法使该控件状态不定,这样不定状态的控件就不会共享自己的状态了。

text.getBackground().mutate().setAlpha(12);

在xml布局中进行设置

  <TextViewandroid:id="@ id/text"android:text="Hello World!"android:background="#987654"android:layout_width="match_parent"android:alpha="0.5"android:layout_height="100dp" />

android:alpha的值为0~1之间的数。数字越大,越不透明。1表示完全不透明,0表示完全透明。

在xml布局中通过android:background设置

<TextViewandroid:id="@ id/text"android:text="Hello World!"android:background="#80987654"android:layout_width="match_parent"android:layout_height="100dp" />123456

颜色和不透明度 (alpha) 值以十六进制表示法表示。任何一种颜色的值范围都是 0 到 255(00 到 ff)。对于 alpha,00 表示完全透明,ff 表示完全不透明。android:background的值的格式为”#AARRGGBB”。AA即透明度,R、G、B是红绿蓝三色。每一位均为0–F的十六位数。其中透明度的数值越大,越不透明。因此这里如果想设置透明度为50%的白色的话,可以如上设置。

设置控件透明度的3种方法相关推荐

  1. C# 删除chart控件网格:两种方法

    C#winform程序 - 删除chart控件网格:两种方法 看网上说把网格线的颜色换成背景色,感觉不太正宗.... 于是探索了一下,喜欢的同鞋点个赞收藏一下呗! 1.编辑控件属性 (点击图片放大观看 ...

  2. C#自动实现Dll(OCX)控件注册的两种方法

    打印这篇文章 尽管MS为我们提供了丰富的.net framework库,我们的程序C#开发带来了极大的便利,但是有时候,一些特定功能的控件库还是需要由第三方提供或是自己编写.当需要用到Dll引用的时候 ...

  3. android控件字体,android 设置控件的颜色字体的方法

    1.用代码设置控件的颜色: int b =  getResources().getColor(R.drawable.blue);//得到配置文件里的颜色 mButton.setTextColor(b) ...

  4. ActiveX 控件注册的几种方法 VC++编写

    ActiveX 控件是一个动态链接库,是作为基于COM 服务器进行操作的,并且可以嵌入在包容器宿主应用程序中,ActiveX 控件的前身就是OLE 控件.由于ActiveX 控件与开发平台无关,因此, ...

  5. android 加阴影,Android设置控件阴影的三种方式

    释放双眼,带上耳机,听听看~! 第一种方式:elevation View的大小位置都是通过x,y确定的,而现在有了z轴的概念,而这个z值就是View的高度(elevation),而高度决定了阴影(sh ...

  6. php设置背景为透明,css如何设置背景颜色透明?css设置背景颜色透明度的两种方法介绍...

    在网页布局中有时为了网页的整体美观,可能需要将网页中的某些部分设置为背景颜色透明,那么如何设置背景颜色透明呢?本篇文章就来给大家介绍一下css设置背景颜色透明的方法. 在css中设置背景颜色透明的方法 ...

  7. css如何设置背景颜色透明?css设置背景颜色透明度的两种方法介绍

    在网页布局中有时为了网页的整体美观,可能需要将网页中的某些部分设置为背景颜色透明,那么如何设置背景颜色透明呢?本篇文章就来给大家介绍一下css设置背景颜色透明的方法. 在css中设置背景颜色透明的方法 ...

  8. .net后台获取html控件值的2种方法

    方法1: C# Label1.Text = Request.Form["txtName"].ToString(); vb.net Request.Form("txtNam ...

  9. android获取该控件在屏幕,android获取屏幕宽高与获取控件宽高(三种方法)

    1.获取屏幕宽高 方法1: int screenWidth = getWindowManager().getDefaultDisplay().getWidth(); // 屏幕宽(像素,如:480px ...

最新文章

  1. linux oracle 关闭防火墙,Linux 下关闭防火墙设置
  2. import win32com.client在python中报错及其解决办法
  3. 浅析SVM中的对偶问题
  4. C++ 二叉树深度优先遍历和广度优先遍历
  5. 创建hadoop 归档文件
  6. Symbian S60 自动通话录音
  7. 关于中国互联网的国际出口-转载
  8. lpush和rpush的区别_Redis系列(七):数据结构List双向链表中LPUSH、LPOP、RPUSH、RPOP、LLEN命令...
  9. 人工智能迅猛发展,如何应对避免失业?
  10. 【PaddleHub模型贡献】一行代码实现海洋生物识别
  11. Mac安装boost
  12. You are the reason I am
  13. 11. 文件操作与模块
  14. Windows下的你画我猜 -- 告别效率低下的目录扫描方法
  15. 西方经济学微观部分中的英文字母缩写
  16. 用c 语言求纸对折的次数,纸张对折新纪录:13次
  17. Android 不分区使用link2sd(app2ext APP2SD)
  18. web网页设计—— 指环王:护戒使者(13页) 电影网页设计 在线电影制作 个人设计web前端大作业
  19. 北美票房排行榜 实时_诸城客房管理软件排行榜
  20. AcWing 0x00. 语法基础课【Python3】版题解-顺序/判断/循环语句

热门文章

  1. copy和retain的区别
  2. 李代数求导与扰动模型
  3. JavaScript中的数据类型检测原理
  4. 第六十一章 SQL函数 GREATEST
  5. Latin1编码的中文 - HTML Escape在老系统全球化的应用体验
  6. 《Springboot设计思想》2-Springboot青出于蓝
  7. 【Java】动物收容所
  8. 【程序员面试金典】面试题 03.06. 动物收容所
  9. 广电国家标准对高清视频服务器播出文件的码率规定是多少,常用视频标准尺寸和码率...
  10. Python实现3D建模工具(下)