我试图在 swift 中使用可扩展的 tableview。所以我在 tableview 的标题中添加了 Gesture,但它无法识别。请指导我。只需交叉检查我的编码。
我的编码如下:
func tableView(tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let vvv = tableView.headerViewForSection(section)
let tap = UITapGestureRecognizer(target: self, action: Selector("handleTap:"))
tap.delegate = self
vvv?.addGestureRecognizer(tap)
return vvv
}
func handleTap(gestureRecognizer: UITapGestureRecognizer)
{
if(gestureRecognizer.state == .Ended)
{
println("SECTION PRESSED") //NOT ENTERING TO THIS BLOCK
}
}
最佳答案
在 Swift 4 中,您可以将 UITapGestureRecognizer 添加到标题 View :
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let headerView = UIView()
let tapRecognizer = UITapGestureRecognizer(target: self, action: #selector(headerTap))
headerView.addGestureRecognizer(tapRecognizer)
return headerView
}
@objc func headerTap() {
// Tap action
}
关于uitableview - UITableview header 中的 UITapGesture,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29274918/