一尘不染

自定义UITableView标头部分

swift

我想UITableView为每个部分自定义标题。到目前为止,我已经实施了

-(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section

这种UITabelViewDelegate方法。我想做的是获取每个部分的当前标题,然后将其添加UILabel为子视图。

到目前为止,我还无法完成。因为,我找不到任何东西来获取默认节头。第一个问题, 有什么方法可以获取默认节头

如果不可能,那么我需要创建一个容器视图UIView,但这一次,我需要设置默认的背景颜色,阴影颜色等。因为,如果仔细看一下该节的标题,它已经被自定义了。

如何获取每个节标题的这些默认值?

谢谢你们。


阅读 226

收藏
2020-07-07

共1个答案

一尘不染

您可以尝试以下方法:

 -(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.frame.size.width, 18)];
    /* Create custom view to display section header... */
    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(10, 5, tableView.frame.size.width, 18)];
    [label setFont:[UIFont boldSystemFontOfSize:12]];
     NSString *string =[list objectAtIndex:section];
    /* Section header is in 0th index... */
    [label setText:string];
    [view addSubview:label];
    [view setBackgroundColor:[UIColor colorWithRed:166/255.0 green:177/255.0 blue:186/255.0 alpha:1.0]]; //your background color...
    return view;
}
2020-07-07