ios - 如何使 UITableView 标题可选择?

标签 ios uitableview

我为 UITableView 制作了一个自定义部分标题,其中包括一些控件,如分段控件、UIImageView 等。它已成功显示,但不可点击,因此我无法与其控件进行交互。

我需要知道如何让这个标题 View 可选?

最佳答案

UITableViewDelegate 无法做到这一点。

您必须将 UITapGestureRecognizer 添加到您的 HeaderView 中,例如:

UITapGestureRecognizer *singleTapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(gestureHandler:)];
[singleTapRecognizer setDelegate:self];
singleTapRecognizer.numberOfTouchesRequired = 1;
singleTapRecognizer.numberOfTapsRequired = 1;   
[yourHeaderView addGestureRecognizer:singleTapRecognizer];


-(void) handleGesture:(UIGestureRecognizer *)gestureRecognizer; //do in this method whatever you want

适用于 Swift 3.0

let tapGesture = UITapGestureRecognizer(target: self, action: #selector(YOURVIEWCONTROLLER.TapGestureRecognizer(_:)))
yourHeaderView.addGestureRecognizer(tapGesture)

func TapGestureRecognizer(gestureRecognizer: UIGestureRecognizer) {
    //do your stuff here 
}

swift >= 4.0

添加继承的UIGestureRecognizerDelegate类引用

let tap = UITapGestureRecognizer(target: self, action:#selector(self.handleTap(_:)))
tap.delegate = self
self.view.addGestureRecognizer(tap)

  @objc func handleTap(_ sender: UITapGestureRecognizer) {
        //Do your work 
    }

可能会有帮助。

快乐编码。

关于ios - 如何使 UITableView 标题可选择?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19996566/

相关文章:

Swift UITableView 工作日 - 开放和关闭时间

iphone - UITableViewCell - 在重新排列控件旁边显示附属 View

iphone - 将项目从 UITableView 拖放到 UITableView

uitableview - 使用 Storyboard的一个 UITableviewcontroller 中的静态和动态单元格

ios - 您能否以更加专注和线性的方式使用 Realm 进行迁移?

android - iOS/Android 是否需要对应用程序提供最低操作系统支持?

swift - UITableView 不会滚动到模糊 View 、选项卡栏或导航栏后面

ios - 索引日期类型的核心数据属性是否有意义?

iphone - 编辑更改在 IOS5 中有效,但在 IOS6 中无效。文本字段 : shouldChangeCharactersInRange:

iphone - 更改 UINavigationController 过渡效果的正确方法是什么