如何更改背景图片透明度
来源:互联网 发布:淘宝上有哪些网购美食 编辑:程序博客网 时间:2024/05/02 00:12
Android系统支持的颜色是由4个值组成的,前3个为RGB,也就是我们常说的三原色(红、绿、蓝),最后一个值是A,也就是Alpha。这4个值都在0~255之间。颜色值越小,表示该颜色越淡,颜色值越大,表示该颜色越深。如果RGB都是0,就是黑色,如果都为255,就是白色。Alpha也需要在0~255之间变化。Alpha的值越小,颜色就越透明,Alpha的值越大,颜色就不透明。当Alpha的值为0时,颜色完全透明,完全透明的位图或者图形从View上消失。当Alpha的值为255时,颜色不透明。从Alpha的特性可知,设置颜色的透明度实际上就是设置Alpha值。
设置颜色的透明度可以通过Paint类的setAlpha方法来完成。
本例子通过一个滑杆(SeekBar)组件改变位图中颜色的Alpha值(透明度)。显示位图的MyView类的代码如下:
private class MyView extends View
{
private Bitmap bitmap;
public MyView(Context context)
{
super(context);
InputStream is =getResources().openRawResource(R.drawable.image);
bitmap = BitmapFactory.decodeStream(is);
setBackgroundColor(Color.WHITE);
}
@Override
protected void onDraw(Canvas canvas)
{
Paint paint = new Paint();
paint.setAlpha(alpha);
canvas.drawBitmap(bitmap, new Rect(0, 0, bitmap.getWidth(), bitmap
.getHeight()), new Rect(10, 10, 310, 235), paint);
}
}
上面代码中的drawBitMap方法的第2个参数表示原位图的复制区域,在本例中表示复制整个原位图。第3个参数表示绘制的目标区域。
SeekBar组件的onProgressChanged时间方法的代码如下:
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser)
{
alpha = progress;
setTitle("alpha:" + progress);
myView.invalidate();
}
- 如何更改背景图片透明度
- IDEA如何设置更改背景图片
- 设置背景图片透明度
- andriod背景图片透明度
- HTML背景图片透明度设置
- 如何更改 navigation bar 或者 tab bar 的背景图片
- 如何更改 navigation bar 或者 tab bar 的背景图片
- 【转载】如何实现动态更改水晶报表背景图片
- UGUI 如何代码更改image的背景图片、颜色以及材质
- activity 透明度更改
- Android更改透明度
- grub2更改背景图片
- 更改SAP的背景图片
- 更改NavigationController的背景图片
- css更改背景图片大小
- JS加入收藏,Jquery更改透明度
- Android 关于背景图片的透明度问题
- 安卓背景图片/背景色设置透明度
- 集合--接口(Interface)
- TextMate2 最新版下载及源码编译过程
- UESTC 2016 Summer Training #4 Div.2 B - ฅ(*`ω´*)ฅ 有趣的思维题
- ubuntu下 字体安装记录
- 用java创建一个简单的服务器
- 如何更改背景图片透明度
- 如何在Eclipse和Android Studio中使用xUtils3(一)
- 几道经典的有关整数二进制的编程题(如:一个数二进制位的偶数位和奇数位交换)
- typeof在linux中妙用
- TOJ 3777Function Problems 三分法的应用
- 表单代码和PHP代码写到同一个文件中
- C++ 友元
- 关于web中application的配置文件
- dos界面命令和window系统常用快捷键