今天要实现一个小功能,就是在一张图片上,套上一层半透明的图片或者颜色。例如下图:

方法其实很多,现在先实现一种方法,部分代码如下啊:

        
  1. ImageViewimage=(ImageView)findViewById(R.id.imageView1);
  2. //防止出现ImmutablebitmappassedtoCanvasconstructor错误
  3. Bitmapbitmap=BitmapFactory.decodeResource(getResources(),
  4. R.drawable.teaport_1).copy(Bitmap.Config.ARGB_8888,true);
  5. // 新的图片
  6. BitmapnewBitmap=null;
  7. newBitmap=Bitmap.createBitmap(bitmap);
  8. Canvascanvas=newCanvas(newBitmap);
  9. Paintpaint=newPaint();
  10. // 铺上一层半透明的绿色
  11. paint.setColor(Color.GREEN);
  12. paint.setAlpha(70);
  13. canvas.drawRect(0,0,bitmap.getWidth(),bitmap.getHeight(),paint);
  14. canvas.save(Canvas.ALL_SAVE_FLAG);
  15. //存储新合成的图片
  16. canvas.restore();
  17. // 搞定!
  18. image.setImageBitmap(newBitmap);

方法很简单。canvas.drawRect 换成drawBitmap就是叠加一张图片。 另外还有很多方法,例如LayerDrawable类 。以后碰到在继续整理。

更多相关文章

  1. android 中的Main调试方法
  2. 实现图片浏览,改变透明度的方法
  3. Android(安卓)给图标着色的方法
  4. Android(安卓)Ams浅析
  5. Android之开源框架NineOldAndroids动画库
  6. Custom View
  7. android6.0以后删除HttpClient的解决方法
  8. logcat使用方法
  9. Error generating final archive: Debug Certificate expired on

随机推荐

  1. Android(安卓)RxJava:一步步带你源码分析
  2. Android身份证件识别的OCR技术SDK
  3. Android(安卓)项目编译过程
  4. APPS大乱斗:4大Android文件浏览器横评(一)
  5. 在Ubuntu上下载、编译和安装Android最新
  6. android常用调试工具fiddle、wireshark和
  7. Android(安卓)PK ios,是谁胜谁负
  8. 【Android(安卓)多语言切换简单实例分享
  9. Android周学习Step By Step(4)--界面布局
  10. Android(安卓)cardview覆盖问题