前言
项目中要用到引导用户使用某个功能的效果,类似如下:
image以上效果来自开源库:https://github.com/huburt-Hu/NewbieGuide
Star 500+ 了,看起来效果也不错。
没的说,试一下。然后 ......
布局写死的?看了文档发现有一句话令人深思:
Android 快速实现新手引导层的库
这是一款可以通过简洁链式调用,一行代码实现引导层的显示,自动判断首次显示,当然也可以通过参数配置来满足不同的显示逻辑和需求。 通过自定义layout.xml实现文本及image的添加,非常方便位置的调整,避免代码调整各种不好控制的情况:实验5,6次才最终确定文字等的位置。
也就说你必须先知道需要高亮显示的控件的位置,然后依照这个控件写一个布局(布局中把箭头图片指向对应的位置等等),并不能智能的箭头指向该需要高亮显示的控件。
image气哭,要你何用!遂自己动手写一个,不就是把控件抠出来显示吗?
如果你读到这,以为我也要写一个库的话,纳尼就错了。
当然选择用PopouWindow实现啦。
思路
一个全屏的半透明的PopupWindow,自定义一个布局,里面添加一个背景为白色的按钮,在引导的时候把按钮移动到需要高亮显示的控件上,可以在瞬间移动完成后在显示按钮。为了看的清内部逻辑,我让他三秒移动完,并且全程显示,写了个Demo,基本上能实现以上的效果,你觉得怎么样?
image而且扩展性极强。
一个开源库被我锤成一个方法几十行代码就搞定的事,2333
image已提交 issue,期待作者回复。
网友评论