如何使用UITableView在UINavigationBar下面固定UISegmentedControl?
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc]initWithItems:[NSArray arrayWithObjects:@"One", @"Two", nil]];
[segmentedControl addTarget:self action:@selector(segmentedControlHasChangedValue:) forControlEvents:UIControlEventValueChanged];
self.tableView.tableHeaderView = segmentedControl;
到目前为止,我已经设置了这个UISegmentedControl,但是它会滚动UITableView内容的其余部分。
答案 0 :(得分:0)
尝试使用segmentedControl作为节标题视图。
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc]initWithItems:[NSArray arrayWithObjects:@"One", @"Two", nil]];
[segmentedControl addTarget:self action:@selector(segmentedControlHasChangedValue:) forControlEvents:UIControlEventValueChanged];
return segmentedControl ;
}
答案 1 :(得分:0)
尝试以下代码
NSArray *keyWordsList;
segmentControl = [[[UISegmentedControl alloc] initWithItems:keyWordsList] autorelease];
[segmentControl setSegmentedControlStyle:UISegmentedControlStyleBar];
[segmentControl setFrame:CGRectMake(10, 47, 300, 30)];
[segmentControl addTarget:self action:@selector(segmentAction:) forControlEvents:UIControlEventValueChanged];
[segmentControl addTarget:self action:@selector(segmentColorAction:) forControlEvents:UIControlEventValueChanged];
[segmentControl setSelectedSegmentIndex:0];
segmentControl.tag = 2;
//[self.navigationController.navigationBar addSubview:segmentControl];
[self.view addSubview:segmentControl];
segmentControl.hidden =YES;
[segmentControl setTag:kTagFirst];