TapGestureRecognizer 未在 swift 内触发
TapGestureRecognizer not firing in swift
您好,我没有卡片可以用来解决这个问题。开始了。
我有这五个 imageview 这是第一个 imageview 的声明但基本上它们有相同的声明
@IBOutlet weak var first: UIImageView!{
didSet{
first.tag = 1
first.addGestureRecognizer(tapGesture())
}
}
然后 tapGesture() 方法就是这个
private func tapGesture() -> UITapGestureRecognizer {
let tapGesture = UITapGestureRecognizer(target: self, action: Selector("iconTapped:"))
tapGesture.numberOfTapsRequired = 1
tapGesture.numberOfTouchesRequired = 1
return tapGesture
}
点击imageview时的动作调用iconTapped()方法,这是代码
func iconTapped(sender:UITapGestureRecognizer){
if let tag = sender.view?.tag{
processGesture(tag)
}
}
我已将所有 imageview userInteractionEnable
设置为 true
,但仍未触发。谁能帮帮我?
某些因素可能有帮助,也可能没有帮助,在 viewdidload
我更新了约束并为 imageview 做了一些动画,但我没有以编程方式添加任何子视图
在尝试了很多事情之后,我查看了我的视图层次结构,发现我的 UIImageView 所在的父视图 userInteractionEnable
在故事板中设置为 false(未选中)。
在这种情况下,父视图是我的父视图,为了修复我需要在 viewDidLoad() 中添加它
self.view.userInteractionEnabled = true
或
单击情节提要中的父视图,然后在属性检查器中选中启用用户交互。
ps。抱歉犯了愚蠢的错误,但我会保留这个问题,可能其他人也会遇到同样的问题。
您好,我没有卡片可以用来解决这个问题。开始了。
我有这五个 imageview 这是第一个 imageview 的声明但基本上它们有相同的声明
@IBOutlet weak var first: UIImageView!{
didSet{
first.tag = 1
first.addGestureRecognizer(tapGesture())
}
}
然后 tapGesture() 方法就是这个
private func tapGesture() -> UITapGestureRecognizer {
let tapGesture = UITapGestureRecognizer(target: self, action: Selector("iconTapped:"))
tapGesture.numberOfTapsRequired = 1
tapGesture.numberOfTouchesRequired = 1
return tapGesture
}
点击imageview时的动作调用iconTapped()方法,这是代码
func iconTapped(sender:UITapGestureRecognizer){
if let tag = sender.view?.tag{
processGesture(tag)
}
}
我已将所有 imageview userInteractionEnable
设置为 true
,但仍未触发。谁能帮帮我?
某些因素可能有帮助,也可能没有帮助,在 viewdidload
我更新了约束并为 imageview 做了一些动画,但我没有以编程方式添加任何子视图
在尝试了很多事情之后,我查看了我的视图层次结构,发现我的 UIImageView 所在的父视图 userInteractionEnable
在故事板中设置为 false(未选中)。
在这种情况下,父视图是我的父视图,为了修复我需要在 viewDidLoad() 中添加它
self.view.userInteractionEnabled = true
或
单击情节提要中的父视图,然后在属性检查器中选中启用用户交互。
ps。抱歉犯了愚蠢的错误,但我会保留这个问题,可能其他人也会遇到同样的问题。