Objective c 在UITableView';中添加UISegmentedControl;s头
我使用以下代码在UITableView中添加UISegmentedControl。除了UISegmentedControl根本不响应用户交互之外,一切都正常。怎么了Objective c 在UITableView';中添加UISegmentedControl;s头,objective-c,ios,uitableview,uisegmentedcontrol,Objective C,Ios,Uitableview,Uisegmentedcontrol,我使用以下代码在UITableView中添加UISegmentedControl。除了UISegmentedControl根本不响应用户交互之外,一切都正常。怎么了 - (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section { if(section == 2) { UIView *headerView = [[UIView al
- (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
if(section == 2) {
UIView *headerView = [[UIView alloc] initWithFrame:CGRectMake(0,0, 320, 44)]; // x,y,width,height
NSArray *itemArray = [NSArray arrayWithObjects: @"One", @"Two", nil];
UISegmentedControl *control = [[UISegmentedControl alloc] initWithItems:itemArray];
[control setFrame:CGRectMake(60.0, 0, 200.0, 40.0)];
[control setSegmentedControlStyle:UISegmentedControlStylePlain];
[control setSelectedSegmentIndex:0];
[control setEnabled:YES];
[headerView addSubview:control];
return headerView;
}
}
您还应该有一个相应的heightForHeaderInSection方法,如下所示:
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
if (section == 2) return 44.f;
return 0.f;
}
否则,控件可能仍会出现,但不会在任何可触摸区域内绘制