项目中经常会用到引导页面这样一个东西,方便教育/提醒小白用户有或者怎样使用产品狗设计出来的创意(奇葩)功能。为此程序员和UI干了一架,到底谁来做。出于项目节奏的需要(被逼的),UI设计师往往没事干,拦下了此活,被项目组大赞无私。出图了,程序员开始贴图到页面,发布项目。
于此有大牛设计出简单方便的第三方库,解放了UI小妹妹。NewbieGuide
github地址:https://github.com/huburt-Hu/NewbieGuide
大佬已经将详细的用法和注意事项详细说明了。通读源码后在此啰嗦几句。
主要思想。
1.页面引导 在DecorView 的 android.R.id.content 既 Framelayout 里面添加最上层的View视图,通过
onDraw()绘画时,采用 Paint 的 setXfermode()设置绘画方式 PorterDuffXfermode.CLEAR 清除图像的方式 镂空下层的控件视图,已达到突出引导功能
2.局部引导 在需要设置引导的区域ViewGroup 控件区域,通过anchor方法设置需要显示的父控件,和第一种android.R.id.content 原理类似,替换了显示位置。
当然这只是其中的部分实践思想。具体请看源码。