我有一个双击识别器,可以在双击表格行时加载一个功能。
根据另一个表中的数据加载表。当重新加载数据,或从前一个表中选择另一行(并加载不同的数据)时,双击并在每次加载新数据时再次调用该操作。
所以第一次,我得到一次值1。然后我重新加载数据,我得到它两次,等等。
当单次点击加载此函数时(在didSelectRowAtIndex中),它表现正常。
似乎每次重新加载表时都会累积双击功能。
func doubleTap(recognizer: UITapGestureRecognizer) {
cDLargeContent.tableSwitchMethod()
print(cDLargeContent.showQTable)
}
答案 0 :(得分:0)
以下是有人看的答案:
起初我尝试在ViewDidLoad中添加“addGestureRecognizer”,但事实证明我实际上需要将手势识别器保留在cellForRowAtIndexPath区域 - 如果我不这样做那么它会使整个表都可以进行,而不仅仅是行。每次加载表时,在cellForRowAtIndexPath中使用手势识别器都会导致其累积。
因此,我加载了didEndDisplayingCell,并将cell.removeGestureRecognizer(doubleTap)放在那里。这样,当重新加载表时,现有单元格会删除双击,然后再将其添加到新单元格中。