view 的 isEclusiveTouch 属性
排它性触碰属性,当一个view 的isEclusiveTouch为真时,点击到该view时,其它view没有办法接收到点击事件。
// 测试 isExclusiveTouch
func testIsExclusiveTouch() {
let btn1 = UIButton.init(frame: CGRect.init(x: 100, y: 100, width: 100, height: 100))
btn1.backgroundColor = UIColor.red;
// btn1.isExclusiveTouch = true;
btn1.addTarget(self, action: #selector(touchClickBtn), for: .touchUpInside);
self.view.addSubview(btn1);
let btn2 = UIButton.init(frame: CGRect.init(x: 220, y: 100, width: 100, height: 100))
btn2.backgroundColor = UIColor.blue;
// btn2.isExclusiveTouch = true;
btn2.addTarget(self, action: #selector(touchClickBtn), for: .touchUpInside);
self.view.addSubview(btn2);
}
func touchClickBtn() {
print("btn 被点击了!!");
}
按住一个不放,再按另一个,会发现两个都被点击了,如果把两个button的isEclusiveTouch设置为true,可以看到,只有前面的一个接到了点击事件,后一个没有接收到点击事件。
网友评论