2011-12-25 129 views
7

我有一个UILabel,我正在以编程方式添加到我的主视图。然后我添加一个手势识别器来获取标签上的触摸事件:检测UILabel上的触摸事件

UITapGestureRecognizer *recog = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(didTouchNotification)]; 
[notification addGestureRecognizer:recog]; 
[recog release]; 

但是,触摸标签时不会触发任何事件。我记录了所有子视图,以确保标签位于顶部,而且是。我可以让识别器工作的唯一方法是将其添加到底层视图中,但这不是很有帮助。有谁知道为什么这个标签表现得如此“透明”?

节日快乐!

回答

18

UILabel默认情况下它的userInteractionEnabled属性设置为NO,因此它不会接收触摸事件并且手势识别器不起作用。尝试为您的标签启用用户互动:

... 
notification.userInteractionEnabled = YES; 
...