关键方法

paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));

说明

canvas原有的图可以理解为Dst

新画上去的前景图可以理解为Sre

Mode值如下图

一般用法

Canvas canvas = new Canvas(bitmap1);

paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));

canvas.drawBitmap(mask, 0f, 0f, paint);

获取Bitmap

/**

* 根据原图和变长绘制圆形图片

*

* @param source

* @param min

* @return

*/

private Bitmap createCircleImage(Bitmap source, int min) {

final Paint paint = new Paint();

paint.setAntiAlias(true);

// 注意一定要用ARGB_8888,否则因为背景不透明导致遮罩失败

Bitmap target = Bitmap.createBitmap(min, min, Config.ARGB_8888);

// 产生一个同样大小的画布

Canvas canvas = new Canvas(target);

// 首先绘制圆形

canvas.drawCircle(min / 2, min / 2, min / 2, paint);

// 使用SRC_IN

paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));

// 绘制图片

canvas.drawBitmap(source, 0, 0, paint);

return target;

}

android地图遮罩,Android 实现遮罩相关推荐

  1. android地图 demo,Android地图控件之多地图展示

    一.简介 地图控件自v2.3.5版本起,支持多实例,即开发者可以在一个页面中建立多个地图对象,并且针对这些对象分别操作且不会产生相互干扰. 文件名:Demo04MultiMapView.cs 简介:介 ...

  2. android地图入门,android 百度地图入门01 (史上最详没有之一)

    最近一直和百度地图打交道,写几篇博客记录一下吧,目前最新版是4.0的 ,之前我用的是3.7的, 就以4.0的为例说一下最基本的配置流程吧. 一.准备工作 1.申请一个百度地图开发者账户--地址:htt ...

  3. android地图论文,Android系统的电子地图论文

    1电子地图的实现 电子地图是直接源码编译非常困难,可以通过调用百度地图API来实现.通过百度地图API导入到项目中,继承API中的Ma-pActivity基类并且把地图配置处相关处理代码放在基类中,然 ...

  4. android 地图面积测量,Android开发自定义控件,实现Arcgis for Android测距、测面积功能...

    采用Arcgis Runtime for Android 100.3.0开发. 控件的功能包括,测距.测面积.撤销.恢复.清除.完成六个功能. 测距:在地图上绘制线段进行长度测量 测面积:在地图上绘制 ...

  5. android 地图相册,android开发实现view转bitmap保存到手机相册

    android开发实现view转bitmap保存到手机相册 直接贴代码,可以根据代码自行测试 //view转bitmap: public void SaveBitmapFromView(View vi ...

  6. Android进阶之路 - 毛玻璃遮罩层

    Hopefully we're growing all the time ~ Look here ~ blurkit三方框架 前期提要 使用方式 完整代码 blurry三方框架 使用方式 实际使用 b ...

  7. android 渐变蒙版_Android实现遮罩层(蒙板)效果

    Android的遮罩效果就是把一张图片盖在另一张图片的上面,通过控制任意一张图片的显示百分比实现遮罩效果.下面我使用两张一样的图片来实现一个类似于 Android 的progressbar 的填充效果 ...

  8. android 遮罩 使底层无法点击,小程序防止点击遮罩层后遮罩层下面也反应(有点击事件)...

    小程序防止点击遮罩层后遮罩层下面也反应(有点击事件) 发布时间:2018-08-11 00:02, 浏览次数:1008 最近在做自定义弹窗,不免会使用到遮罩层或者说蒙层. 但是关键是,有遮罩层后,再点 ...

  9. android地图定位

    简单测试一下andriod中的地图应用,没想到一个小小的应用也费了不少的事,记录一下,以备查. 首先要修改AndroidManifest.xml文件: <!-- 加入引用库 --> < ...

  10. android 地图服务开发 INSTALL_FAILED_MISSING_SHARED_LIBRARY 错误解决

    android 地图服务开发 INSTALL_FAILED_MISSING_SHARED_LIBRARY 错误解决 地图服务开发中遇到此类错误大体分为以下两种情况解决:(论坛里大多都是属于第一种情况的 ...

最新文章

  1. stp:spanning tree protocol 生成树基本原理
  2. 【嵌入式开发】 ARM 汇编 (指令分类 | 伪指令 | 协处理器访问指令)
  3. 怎样下载安装python_Windows系统上如何安装Python和pip
  4. Java JUC工具类--CountDownLatch
  5. mysql删除unionkey_MySQL索引如何优化?二十条铁则送给你
  6. gc.collect()==>python的强制垃圾收集机制(不建议使用强制回收,因为可能导致错误)
  7. eclipse php 代码风格,关于更改Zend Studio/Eclipse代码风格主题的介绍
  8. 分布式存储 FastDFS-5.0.5线上搭建
  9. iOS 开发应用内跳转到App Store
  10. 深圳有哪些牛逼的互联网公司?看完你再跳槽!
  11. 如果mysql磁盘满了,会发生什么?还真被我遇到了~
  12. [0715]JSOI Test digit
  13. FFMPEG 常用命令行
  14. 数仓 调度_【数仓开发-数仓概念篇】3.3 报表vs数据可视化vs ETL
  15. Android常用组件
  16. window7磁盘分区
  17. 基因组组装---基因组大小评估(genome survey)
  18. steam安装失败 致命错误 缺失steamui.dll文件
  19. Java—二维码生成与识别(一)
  20. Java面向对象三大特征---继承

热门文章

  1. Docker安装Apache与运行简单的web服务——httpd helloworld
  2. 常用的高性能 KV 存储 Redis、Memcached、etcd、Zookeeper 区别
  3. 第五周周记(国庆第四天)
  4. SpringCloud Alibaba 微服务架构版本说明
  5. 安装win下的Anaconda ----针对python3.6.4版本
  6. Android数据持久化:SharePreference
  7. Camera系列规格参数
  8. 在Yolov5 Yolov4 Yolov3 TensorRT 实现Implementation
  9. h265webplayer
  10. CentOS7的node.js安装