我有一个表视图,并且我在表格视图单元格上使用UILongPressGestureRecognizer以在单元格上显示上下文菜单,以允许用户执行一些额外的功能。在iOS 5.1中一切都很好,但是当我在iOS 5和4.3中测试时,事件并未被解雇。UITableViewCell上的UILongPressGestureRecognizer在iOS 5和4.3中不起作用
有谁知道如何解决这个问题请帮助我,在此先感谢。
下面是我的代码:
在tableViewCell.h:添加UIGestureRecognizerDelegate
在tableViewCell.m
UILongPressGestureRecognizer *longPressRecognizer = [[UILongPressGestureRecognizer alloc]
initWithTarget:self action:@selector(handleLongPress:)];
longPressRecognizer.minimumPressDuration = 1.5;
longPressRecognizer.numberOfTouchesRequired = 1;
longPressRecognizer.numberOfTapsRequired = 0;
longPressRecognizer.delegate = self;
[self addGestureRecognizer:longPressRecognizer];
[longPressRecognizer release];
//方法来处理事件
- (void)handleLongPress:(UILongPressGestureRecognizer *)gestureRecognizer
{
if (gestureRecognizer.state == UIGestureRecognizerStateBegan)
{
// Do something.
}
}
你可以显示事件处理程序方法和添加识别器的代码吗? – Anna 2012-08-15 17:16:51
嗨,安娜,我在我的问题中添加了代码。 – 2012-08-16 01:36:55
看起来很好。在5/4.3上运行时,确保添加识别器的代码实际上已被调用。这个问题可能在代码的其他部分。 – Anna 2012-08-16 04:04:53