写一个轻量的用户引导工具:Android自定义View之GuideView

本文介绍如何自定义一个轻量级的Android GuideView,用于实现应用引导功能。通过使用PorterDuff.Mode.CLEAR混合模式创建半透明蒙板并高亮显示控件,同时添加说明文字。在页面中通过添加自定义View和布局来展示引导,源码已上传至GitHub,方便开发者引用和进一步定制。
摘要由CSDN通过智能技术生成

自定义自己的轻量级GuideView,满足app的正常引导需求,半透明灰色蒙板,控件高亮展示,添加引导说明。

将主要代码贴出做简单解释。

首先自定义蒙板View

onDraw()方法中关键代码如下

setLayerType(View.LAYER_TYPE_SOFTWARE, null); //需要关闭硬件加速,否则混合模式显示无效
Paint paint = new Paint(); //新建画笔
paint.setAntiAlias(true); //抗锯齿
setBackgroundColor(Color.TRANSPARENT); //设置画布背景透明
paint.setColor(0xa0000000); //设置画笔颜色半透明
canvas.drawRect(0,0,width,height,paint); //半透明画满整个画布,with、height为自定义View宽高
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.CLEAR)); //设置图像混合模式为clear
paint.drawRect(left,top,right,bottom,paint); //绘制镂空图形

PorterDuff.Mode.CLEAR:上层绘制不会提交到画布,并把与下层交集部分也清除,类似镂空,设置此混合模式之后画笔所画图形部分就为镂空部分

其他混合模式如下:

PorterDuff.Mode.CLEAR 上层绘制不会提交到画布,并把与下层交集部分也清除<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值