我有一個表視圖,並且我在表格視圖單元格上使用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