在UITableView中禁用触摸交互

时间:2012-02-29 07:00:48

标签: uitableview uiview touch

我有一个UITableView,当用户触摸一个单元格时会绘制一个子视图。

问题是subView绘图是动画的,如果用户足够快,他们可以多次点击一个单元格,我想在动画期间和之后禁用它。

我尝试过使用它:

- (void) tableView: (UITableView*) tableView didSelectRowAtIndexPath: (NSIndexPath*) indexPath {

    [[UIApplication sharedApplication] beginIgnoringInteractionEvents];

还有一个bool变量:

if (isAnimating == NO) {

但似乎都不起作用。在每种情况下,快速接触会搞砸一切。

任何帮助都会非常感谢!

2 个答案:

答案 0 :(得分:37)

试试这个...... 单击单元格集

tableView.userInteractionEnabled = NO;

答案 1 :(得分:3)

我知道这是一个老问题,但它缺乏快速版本,所以, 在Swift 3中它是:

tableView.isUserInteractionEnabled = false;

并将其重新打开:

tableView.isUserInteractionEnabled = true;

想到这可能对某人有帮助,如果他们像我一样在swift 3中寻找答案,并在此结束。