我有一个编程创建的UILabel,它在UIView内部和UIScrollView中使用autolayout。最初它是脱离屏幕的,然后滑到屏幕上(通过动画化自动收费约束常量的变化)。我试图添加一个手势识别器(单点击)到UILabel,但这个手势永远不会被识别。如果我将一个添加到UIView中,手势识别器就能工作。有人知道解决这个问题的办法吗?这是自动收费引起的问题吗?谢谢。
编辑
这肯定与滚动视图吞咽触摸有关。我刚刚在滚动视图之外创建了相同的标签,手势识别器工作得很好!
编辑2我可以使用Interface在滚动视图中创建标签,但在编程上它不能工作.
发布于 2015-02-02 14:43:52
原来标签嵌入在两个视图中,在滚动视图中的视图中。把它拿出来似乎解决了他们的问题..。
发布于 2015-01-26 15:13:11
您必须在User Interaction Enabled中签入UILabel
如果以编程方式添加UITapGestureRecognizer:
在viewDidLoad中,我添加了以下代码:
let gesture = UITapGestureRecognizer(target: self, action: Selector("myaction"))
self.label.addGestureRecognizer(gesture)选择器:
func myaction() {
println("Label tapped")
}其中self.label是正在被点击的标签的参考出口。
https://stackoverflow.com/questions/28152726
复制相似问题