Swift:如何防止同时刷两个表格单元格?

时间:2017-03-17 06:58:23

标签: ios swift

我有一个带有单元格的表格视图,用户可以滑动以删除该行。我每次刷两行时都会收到fatal error: Index out of range错误(两根手指,每行一根)。

我在OrdersViewController中添加了这4行:

  override func viewDidLoad() {
    ...
    self.view.isMultipleTouchEnabled = false
    self.view.isExclusiveTouch = true
    self.ordersTable.isMultipleTouchEnabled = false
    self.ordersTable.isExclusiveTouch = true
  }

尝试更改此行为,以便一次只刷一个单元格,但没有任何更改。我仍然可以在两个不同的行上使用两根手指来同时来回滑动。

还有其他办法吗?

无论我把它放在何处,IsExclusiveTouch和IsMultipleTouchEnabled都无法正常工作。我想知道它与我使用这个库有什么关系github.com/alikaragoz/MCSwipeTableViewCell

也可能是因为我使用的是Firebase?

2 个答案:

答案 0 :(得分:0)

首先设置手势委托,然后使用此委托,它可以帮助你:

override func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
    return false;
}

答案 1 :(得分:0)

我最终使用我正在使用的表格单元格提供的回调来完成此操作:

x =
   36     2
   45     3
   76     1