0

我需要帮助。我三合一UITableViewsUIView但是,我只希望UITableView有一个标题。我怎么能用代码说出来?我已经有以下代码。多谢你们。

- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {   
    if (tableView == Table1) {
        return @"My Header Text";
    } else if (tableView == Table2) {
        return nil;
    } else if (tableView == Table3) {
        return nil;
    }
}   
4

3 回答 3

2

您提供的代码将仅为特定部分添加标题视图。因此,如果您有两个或更多部分,那么您需要编写额外的逻辑来为每个部分设置标题视图。

这是设置tableHeaderView单表的简单方法。

UILabel *label = [[UILabel alloc]initWithFrame:CGRectZero];
label.text = @"my table header";
table1.tableHeaderView = label;
于 2013-04-15T09:58:54.960 回答
1

如果这不起作用,您也可以尝试为标题的高度返回零:

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
    if (tableView == Table1) 
    {
        return 50.0; // or what's the height?
    } 
    else
    {
         return 0.0;
    }
}
于 2013-04-15T09:50:53.137 回答
0

尝试这个

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
NSString *sectionTitle = [self tableView:tableView titleForHeaderInSection:section];
if (sectionTitle == nil) {
return nil;
}
 UILabel *label = [[[UILabel alloc] init] autorelease];
 label.frame = CGRectMake(20, 6, 300, 30);
 label.textColor = [UIColor blackColor];
 label.font = [UIFont boldSystemFontOfSize:16];
 label.text = sectionTitle;

  UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, SectionHeaderHeight)];
  [view addSubview:label];
  return view;
  }
于 2013-04-15T10:14:04.593 回答