dai*_*dai 6 iphone objective-c uitableview uitouch
我有一个tableview,在使用时添加新内容时会重新加载 [tableview reloadData];
麻烦的是我在表格中的TableCells上有一个UILongPressGestureRecognizer,因为正在重新加载单元格/表格,LongPress并不总是有时间工作,我猜测它的内部计时器正在重置当单元格/表格正在重新加载.
您是否尝试过在调用UILongPressGestureRecognizer之前查看 s 的状态?[tableView reloadData]例如:
// Returns |YES| if a gesture recognizer began detecting a long tap gesture
- (BOOL)longTapPossible {
BOOL possible = NO;
UIGestureRecognizer *gestureRecognizer = nil;
NSArray *visibleIndexPaths = [tableView indexPathsForVisibleRows];
for (NSIndexPath *indexPath in visibleIndexPaths) {
// I suppose you have only one UILongPressGestureRecognizer per cell
gestureRecognizer = [[tableView cellForRowAtIndexPath:indexPath] gestureRecognizers]
lastObject];
possible = (gestureRecognizer.state == UIGestureRecognizerStateBegan ||
gestureRecognizer.state == UIGestureRecognizerStateChanged);
if (possible) {
break;
}
}
return possible;
}
// ... later, where you reload the tableView:
if ([self longTapPossible] == NO) {
[tableView reloadData];
}
Run Code Online (Sandbox Code Playgroud)
让我知道它是否有效!
| 归档时间: |
|
| 查看次数: |
1161 次 |
| 最近记录: |