如何根据我的要求自定义tableview标题?

时间:2018-05-29 03:57:27

标签: ios objective-c uitableview expandable-table

我正在尝试实现一项功能:

enter image description here

图片1显示带标题的标题。当您单击标题1,2,3,4时,它将展开并显示如图2所示的tableview行。

我想要的是在标题0视图中,我想自定义并想要添加图像和一些文本(见图3)。

如何实现此功能,如何使用Objective-C自定义tableview标题?

我使用下面的代码,但没有显示任何更改,

-(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;
}

Here is my project sample

1 个答案:

答案 0 :(得分:1)

使用viewForHeaderInSection方法。它返回一个UIView。您可以以编程方式创建所需的UIView()。我猜你知道怎么做。

现在,在此方法中检查indexPath.row。如果它的" 0"那么你的ImageView应该返回... else返回一些其他视图,例如带有特定文本的标签。希望它有所帮助。