引导页高亮控件的实现

作者: 碎碎想 | 来源:发表于2017-12-20 17:25 被阅读104次

    背景:
    由于最近系统的学习了一下自定义view和动画,当知识看完之后不知道自己掌握了多少,而且平时和朋友聊天说起过高亮控件,所以写了一个,不足之处希望大家多多指教。
    效果图:


    高亮控件.gif

    如图:我点击屏幕上“第一个“button,这个按钮会变为高亮,并且在该控件的右上角会有一个文字说明的button;接下来我点击这个文字说明的button,会把高亮控件移动到下一个,知道没有之后,高亮消失,恢复正常页面(当然什么时候开启高亮,什么时候消失高亮,都是可以通过方法控制的)。
    这种效果的实现肯定需要使用自定义动画来完成。而自定义动画特别有趣的就是Canvas对于裁剪的时候,有一个这样的方法:

    public boolean clipRect(float left, float top, float right, float bottom,
                @NonNull Region.Op op) 
    

    这里特别说一下Region.Op这个参数
    该参数的作用就是在剪下多个区域下来的情况,当这些区域有重叠的时候,这个参数决定重叠部分该如何处理,多次裁剪之后究竟获得了哪个区域
    废话不多说,一图胜千言:

    属性介绍.jpg

    注:此图不是我画的,是从网上找的,如有侵权,请联系删除。

    通过这种方式我们就可以在屏幕上抠出我们所需要的高亮的部分。
    下面放出我的代码
    具体的实现我在代码中注释的很清楚,大家可以直接看我的代码,觉得好的希望给一个star。


    项目地址:

    https://github.com/fengxiaobing/MyHighLight

    相关文章

      网友评论

        本文标题:引导页高亮控件的实现

        本文链接:https://www.haomeiwen.com/subject/bmtnwxtx.html