按钮对 UITableView 的 headerview 没有响应
Posted
技术标签:
【中文标题】按钮对 UITableView 的 headerview 没有响应【英文标题】:Button is not responsive on headerview of UITableView 【发布时间】:2013-06-26 13:04:41 【问题描述】:我正在为我的 tableview 创建标题。并在该标题上添加视图。 在那个视图中有两个图像视图和一个按钮
按钮没有响应(顶部的一个很小的区域是响应的) 为什么会这样,请帮帮我?
我已经尝试过一些 SO 答案——比如“setAutoresizingMask:UIViewAutoresizingNone” 但是没有任何效果
这是我的代码
-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
// ADDING A VIEW
UIView *header = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 310, 39.0)];
header.backgroundColor = [UIColor clearColor];
header.userInteractionEnabled = YES;
[header setAutoresizingMask:UIViewAutoresizingFlexibleHeight];
// ADDING IMAGE VIEW
UIImageView *image = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 310, 39.0)];
image.image = [UIImage imageNamed:@"headertop.png"];
[image setUserInteractionEnabled:TRUE];
[header addSubview:image];
// ADDING ANOTHER IMAGEVIEW (beneath the view's frame)
UIImageView *downImage = [[UIImageView alloc]initWithFrame:CGRectMake(0 , 39, 310, 23)];
downImage.image = [UIImage imageNamed:@"headerbottom.png"];
[header addSubview:downImage];
// ADDING BUTTON
UIButton *placeBtn = [UIButton buttonWithType:UIButtonTypeCustom];
[placeBtn addTarget:self
action:@selector(goToRestPage:)
forControlEvents:UIControlEventTouchUpInside];
placeBtn.tag = section;
placeBtn.backgroundColor = [UIColor yellowColor];
placeBtn.frame = CGRectMake(75,20, 150, 20);
[header addSubview:placeBtn];
return header;
【问题讨论】:
【参考方案1】:使用此方法。我想你错过了这个方法。
-(float)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
return 30.0;
或者这个方法已经存在所以增加header的高度。
-(float)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
return 80.0;
【讨论】:
【参考方案2】:请这样做:
从您的 XIB 启用用户交互为 TRUE。默认为 FALSE。
谢谢,
【讨论】:
在哪个...??我正在以编程方式创建所有内容在 XIB 中只有表格视图 你的页眉高度是多少?以上是关于按钮对 UITableView 的 headerview 没有响应的主要内容,如果未能解决你的问题,请参考以下文章
按钮对 UITableView 的 headerview 没有响应
ios - UITableView 删除按钮不会对手势做出反应