委托didSelectRowAt不为某些单元格调用

时间:2017-05-23 12:21:51

标签: ios swift uitableview

某些自定义单元格没有调用didSelectRowAt。我也在tableView上使用手势识别器。我试图覆盖shouldReceive

func gestureRecognizer(_ sender: UIGestureRecognizer, shouldReceive touch: UITouch) -> Bool {
return true
//return false
}

对于这两种情况,无论是真还是假,都没有为相关单元调用didSelectRowAt。在自定义单元格上启用了用户交互

2 个答案:

答案 0 :(得分:0)

请删除gestureRecognizer并从代码或使用这样的故事板连接您的UITableView代理和数据源。

tableview.delegate = self
tableview.datasource = self

答案 1 :(得分:0)

第一个手势和didSelect 不能同时工作。但是如果你想启用tableview手势和didSelect自定义单元格,你需要检查以下方法中的当前视图

 func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldReceive touch: UITouch) -> Bool {
        if touch.view!.isKind(of: Your Custom Cell){
            return false
        }
        return true
    }

希望它会对你有所帮助!