Ios 未在UI按钮上调用ToucheShouldCancelInContentView
我正在使用UITableViewController进行一个新的Swift项目。我的问题是,单元格中的按钮会延迟响应,这是一个常见的问题。我以前在一个较旧的项目中通过对tableView进行子类化并覆盖ToucheShouldCancelIncontentView处理过这个问题 这一次似乎不起作用。我在情节提要中检查了canCancelContentTouched和UncheckedDelaysContentTouches,但为了确保这一点,我在代码中也做了检查。我添加了一些指纹来了解发生了什么。当我触摸一个按钮(短或长)时,控制台中没有任何东西。按钮的动作会被触发。触摸按钮外部显示触摸开始和触摸结束Ios 未在UI按钮上调用ToucheShouldCancelInContentView,ios,swift,uitableview,storyboard,Ios,Swift,Uitableview,Storyboard,我正在使用UITableViewController进行一个新的Swift项目。我的问题是,单元格中的按钮会延迟响应,这是一个常见的问题。我以前在一个较旧的项目中通过对tableView进行子类化并覆盖ToucheShouldCancelIncontentView处理过这个问题 这一次似乎不起作用。我在情节提要中检查了canCancelContentTouched和UncheckedDelaysContentTouches,但为了确保这一点,我在代码中也做了检查。我添加了一些指纹来了解发生了什么
import UIKit
class MyTableView: UITableView {
required init(coder aDecoder: NSCoder) {
print("initTV")
super.init(coder: aDecoder)
self.delaysContentTouches = false
self.canCancelContentTouches = true
}
override func touchesShouldCancelInContentView(view: UIView!) -> Bool {
print(view)
if view.isKindOfClass(UIButton) {
return true
}
return super.touchesShouldCancelInContentView(view)
}
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
print("touchesBegan")
}
override func touchesEnded(touches: NSSet, withEvent event: UIEvent) {
print("touchesEnded")
}
}
有没有人在斯威夫特的故事板上尝试过这个