我曾经提出过类似的问题,并且阅读了无数其他问题,但我仍然无法弄清楚,已经花费了几个晚上来尝试解决。
我有一个自定义的UITableView类,我已经创建了子类来调用不同的内容。在我的子类中,我使用了一些override方法,如didSelectRowAtIndexPath。
如果我将它分配给一个表格,它可以正常工作,除了我必须长按才能触发didSelectRowAtIndexPath。轻击似乎根本不起作用。我在项目的其他地方确实有一个手势识别器,但我已经禁用了它们所有,并且仍然无法让轻击起作用。我读到可能与supers或touchesbegan有关,但现在感觉完全陷入了困境。请帮帮我!
class BaseTable: UITableView, UITableViewDelegate, UITableViewDataSource {
var rowsInSection: Int { return 0}
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)!
//Standard table set up funcs
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
{
print(IndexPath.row)
}
}
class NewTable: BaseTable{
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
print (IndexPath.row + " NEW")
}