美文网首页iOS学习专题iOS技术交流iOS程序猿
判断透明像素和事件穿透效果

判断透明像素和事件穿透效果

作者: yue博客 | 来源:发表于2017-02-22 23:00 被阅读126次

    前几天我在玩网易云音乐的手机端时,发现一个有趣的效果

    网易云音乐页面部分截图

    如上图,因为我最近在玩阴阳师的游戏,所以给网易云设置了皮肤,可以看出tabbarItem比平常的要高,而我所得有趣的效果就是当我点击我用红色曲线圈起来的区域时,是tabbar在响应点击事件,从而切换页面,而当我点击蓝色箭头所指的区域时,是tableView 的 cell在响应点击事件,从而开始播放这首歌曲。

    从事iOS开发的同学都知道,iOS的控件都是矩形的,像这样的特殊效果,给人的感觉就好像是这四个tabbarItem是不规则的形状一样

    我所想到的解决方法是:监听手指点击的点的图片的像素是否透明,如果透明,则tabbar不响应事件,则根据响应链的特性,其下方的tableView就会响应点击事件

    想到方法后,我便开始了百度,😁😄

    首先找到了这样一篇博客:iOS实现UIImageView透明区域点击事件穿透(这篇博客也是转载的:原文链接在博客下方:原文链接

    后又在万能的stackOverFlow上找到一篇更详细的问题回答:How do I get the RGB Value of a pixel using CGContext?

    以上两个链接讲解的都很详细,我也不再赘述了,有兴趣的同学可以下载网易云设置皮肤后仔细体验一下

    demo效果图

    最后附上demo:地址

    相关文章

      网友评论

        本文标题:判断透明像素和事件穿透效果

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