我有三个UIButton
实例:buttonA
,buttonB
和buttonC
。每个按钮都有自己的中心并占据一定的大小。
我想让这些按钮“做一些事情”(即改变alpha
值),当屏幕被点击时,除了按钮所在的地方,这样人们就可以按下按钮,触发它们的action
而不发生“做这件事”。
请问最好的办法是什么?
最佳答案
试试这样的:
override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
// Get location of touch
let pos = touches.first?.location(in: self.view)
if !b.frame.contains(pos) && !b2.frame.contains(pos) && !b3.frame.contains(pos) {
// Change alpha or do something else
}
}
其中b、b2和b3是每个按钮。
关于ios - 检测不在UISubView上的轻击手势,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51639368/