2

我有一个UIGestureRecognizer附加到UILabel屏幕外渲染的一个,稍后进入视图时。进入视野后,点击手势识别器不起作用。如果在视图中渲染,它工作正常。

任何想法为什么这不起作用?我该如何解决?

4

2 回答 2

0

我严重怀疑它与将其“渲染”出屏幕有关(以及您的意思是什么)。无论如何,我建议当标签被带到屏幕上时,您验证标签是否已启用,然后执行以下操作:

NSArray *grs = label.gestureRecognizers; 
for(UIGestureRecognizer *gr in grs) {
  NSLog(@"Recognizer: %@ enabled=%d state=%d del=%@", NSStringFromClass[gr class]), gr.enabled, gr.state, gr.delegate);
}

比较屏幕外和屏幕上的结果会很有趣。事情正在发生,只需要找出不同的属性。但是没有办法获得目标/动作对的列表。

于 2012-08-13T20:53:17.270 回答
0

子类化UILabel和实现hitTest:withEvent:解决了这个问题

于 2014-03-05T14:47:28.017 回答