美文网首页iOS Developer
iOS 不规则按钮点击事件(二)

iOS 不规则按钮点击事件(二)

作者: Zhui_Do | 来源:发表于2017-03-31 13:09 被阅读301次

目标:一个正方形视图被分割成两个不规则视图

两个不规则图形.png

代码操作:我用了两个view 分别绘制成了两个不规则图形,其中两个不规则图形的view实际大小是红色区域大小
现在我让两个不规则图形都向self.view.center移动到达黄色区域位置


移动后.png

注意

虽然可以通过上篇中提到的在touchBegan中判断当前touch点是否在不规则图形的path中但是当两个视图移动后 ,由于视图实际大小都是正方形大小,所以一定有一个在上层有一个在下层,这回导致有一个图形可以点,另一个不可点。

解决办法

重写view的pointinside方法这个方法决定了是否响应事件,只需在方法中判断当前点是否在path中就可以 ,如果不在就不响应,根据事件传递链,它会自动找下一层视图看下一层视图是否能响应

 override func point(inside point: CGPoint, with event: UIEvent?) -> Bool {
        if marginalPath.contains(point)
        {
            return true
        }
        else
        {
            return false
        }
    }

相关文章

网友评论

    本文标题:iOS 不规则按钮点击事件(二)

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