uitableview - UITableview header 中的 UITapGesture

标签 uitableview swift ios8 uigesturerecognizer

我试图在 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/

相关文章:

objective-c - 如何在自定义 UITableView 中获取文本字段

ios - 滚动 uitableview 时单元格 subview 消失

ios - UITableView 排序 Nib 行

swift - 使用 AlamoFireImage 在 CollectionView 中使用 .af_setImage 方法加载数组的 url 时发生 fatal error

ios - 即使在实现 PushView Controller 后,如何使导航栏和选项卡栏在每个屏幕上始终可见

ios - 无法在 xcode 中创建临时应用程序

ios - 从后台更新过滤表中的单元格?

ios - 体系结构 x86_64 iOS swift 的 undefined symbol

html - 如何在 swift 2 的浏览器中加载 HTML 字符串?

ios8 - 当另一个 View Controller 显示在它上面时,UIPresentationController 会改变大小