iOS:如何为Table创建自定义标题部分?

时间:2014-09-02 18:12:31

标签: ios objective-c iphone uitableview

我是iOS编程新手,我有一个要求,我需要为表格显示自定义标题部分。它应该类似于

enter image description here

我检查了哪个API /方法负责显示标题并找到了

- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
    return @"HEADER";
}

问题

  • 我是否需要建立单独的UITableViewCell?以及如何用标题将其缝合?

请推荐

谢谢

2 个答案:

答案 0 :(得分:0)

您不必构建单独的UITableViewCell。 如果需要自定义tableView标头,请构建自定义UIView,然后将其设置为tableView的标题。

self.tableView.tableHeaderView = customView;

或者,如果您需要将tableView的节标题设置为自定义视图:

 -(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    UIView *sectionView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.frame.size.width, 18)];
    //Add UILabels to sectionView, style it, etc.

    return sectionView;
}

答案 1 :(得分:0)

你可以这样做:

tableView:viewForHeaderInSection: 

返回值是UIView

tableView:heightForHeaderInSection:

返回值是CGFloat

或者您可以设置:

[self.tableView setTableHeaderView:viewForHeader];

viewForHeader是您的自定义视图。

注意:它们都表现不同。如果您使用HeaderInSection,标题将在该部分内滚动,直到它与下一个标题发生冲突。

如果设置TableHeaderView,它将始终停靠在tableView的顶部,它将取决于您想要完成的任务。