我必须在表View的开头设置headerView。 它似乎是固定的,请帮助。
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{
UIView *headerView = [[[UIView alloc] initWithFrame:CGRectMake(0,0,tableView.frame.size.width,40)] autorelease];
headerView.backgroundColor = [Utility consumerLightColor];
UILabel *headerLabel = [[UILabel alloc] initWithFrame:CGRectMake(5, 0, 250, headerView.frame.size.height)];
headerLabel.text = @"Upcoming Appointments";
headerLabel.textAlignment = NSTextAlignmentLeft;
headerLabel.textColor = [UIColor whiteColor];
if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPhone) {
headerLabel.font = [UIFont fontWithName:@"bauhaus md bt" size:15.0f];
}
else{
headerLabel.font = [UIFont fontWithName:@"bauhaus md bt" size:16.0f];
}
// // NSLog(@"title --> %@",[locationArray objectAtIndex:i]);
headerLabel.backgroundColor = [UIColor clearColor];
[headerView addSubview:headerLabel];
[headerLabel release];
return headerView;
}
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
if (tableView == appointmentListtableView) {
CGFloat changeheight = 40.00;
return changeheight;
}
else{
return 0.0f;
}
}
我想要的只是在表格View的开头设置标题视图(即将到来的约会)的位置,它不应该被修复。
答案 0 :(得分:1)
也许你需要删除表头,而不是段头? 为此,您需要设置:
tableView.tableHeaderView = nil
答案 1 :(得分:0)
请始终牢记,
如果你想将静态标题设置为表格视图,那么它的好处&将其设置为a,
的最佳做法yourTableView.tableHeader = yourHeaderView;
如果您的标题是动态的,您不知道天气要设置多少部分,那么请使用方法,
viewForHeaderInSection:tableView
这并不意味着你一次只能使用一个,你也可以一次使用,
现在谈到你的情况,我认为你在 tableViewHader 中做错了什么,如果你不再需要,将它设置为 nil ,
但我很好奇有一件事,即使你已经设置了tableViewHeader,为什么它仍然显示上面和下面?您的第二个标题的下方,您正在设置tableViewHeader
或sectionFooter
或显示UITableViewCell