动态添加手势到现有的表视图节标题

时间:2014-01-09 16:09:29

标签: ios iphone objective-c uitableview

我正在尝试使用以下代码向表格视图部分标题添加单击手势。但它没有在返回的视图中嵌入手势。我在这做错了什么?真的很感谢你的帮助。

-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{

    UIView *view = [tableView headerViewForSection:section];

    UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(dismissKeyBoard)];
    [view addGestureRecognizer:singleTap];


    return view;
}

1 个答案:

答案 0 :(得分:2)

尝试将一个委托设置为手势识别器,以便与滚动视图(表格视图)手势一起识别:

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
    return YES;
}

像这样设置委托:

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(dismissKeyBoard)];
singleTap.delegate = self;
[view addGestureRecognizer:singleTap];

您还需要确保手势只设置一次,因为每次标题出现/重新出现在屏幕上时,都会调用tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)部分。你拥有它的方式,你最终会在标题视图中使用多个手势识别器。