现在的App界面比较繁杂,颜色搭配各异,各种操作按钮滑块散落,还有不少很难发现的功能,开发人员辛辛苦苦做出来的功能,却很少有用户知道入口,很少有人使用,这不得不说是一个很大的遗憾。
我在一个手机方案公司,负责的是浏览器模块,前段时间公司有个新需求,新增一些新手引导。效果如图所示,(待插入图片),技术选择的话,我这次使用了popupwindow来实现,初期考虑使用在最外层添加一个透明的层,类似PS的遮罩层效果,但是这个技术只适合静态的新手引导,不适合某些交互性比较强的界面,比如划动的列表页,如果手指一直按住,引导要紧跟指示的元素,那样设计的路径位置计算就比较繁琐了。后来发现popupwindow有实现了这部分的功能,可以在列表页以及一些滑动的控件对目标进行追踪,最后为了程序的稳定性以及本着尽量简化(我承认我有点懒:)),利于后期维护的原则,最终选择了上面提到的方式。下面说一下,需要使用的引导界面,有静态的,也有动态的,有一开始就出现的也有操作过程中出现的。首先是App打开时就会出现的引导,比如这里的麦克风图标上的引导,代码上是在onwindowfocusChange这个函数为true的时候,也就是说在第一次窗口获得焦点的时候的显示。但是如果这个部分如果有多个同样层级的引导就需要注意出现的先后的顺序,我们可以把这个逻辑做在popupwindow的dissmiss回调函数里,不过结果就是这个类会变得