美文网首页
仿iPhone系统AssistiveTouch功能球实现

仿iPhone系统AssistiveTouch功能球实现

作者: 半路出家的程序猿 | 来源:发表于2016-11-30 16:20 被阅读195次

一、简单说一下Demo实现的功能需求:
1、类似于iPhone的AssistiveTouch的功能小球;
2、可随手势拖动;
3、拖动手势结束后,有侧边吸附效果;
4、单击后动画展开,弹出其它功能按键;
5、可全局控制小球显示和隐藏的状态。

二、说一下开发当中遇到的关键点:
1、因为浮层需要置顶,不能影响其它视图的使用,且会在任意位置呼出,因此考虑使用UIWindow进行实现;
2、UIWindow的使用:
1> 想要置顶效果就需要设置UIWindow的windowLevel,我是用的是UIWindowLevelAlert + 1,也就是比系统的Alert弹框级别高;
2> 超出window的frame的子View是无法通过重写父View的 hitTest: 方法进行点击事件拦截的,所以我在实现弹出效果时,动态的改变了window的frame;

三、实现截图:


未展开状态 展开状态

四、源码地址:
https://git.oschina.net/SuperChaoChao/ToolBallDemo.git

相关文章

网友评论

      本文标题:仿iPhone系统AssistiveTouch功能球实现

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