如何在每几个TableView单元格之间添加条形图

时间:2012-11-04 10:26:28

标签: ios uitableview

我想创建一个看起来像这样的tableView。 (好吧,有不同的标题;))

enter image description here

到目前为止,我在几个应用程序中看到了这些内容,但我无法弄清楚如何制作这些内容。由于色调(如在导航栏中)和各种应用程序中的类似外观,我猜这些不是自定义单元格,而是不同的东西。

还有一个问题(如果它们是自定义单元格)。当我在故事板tableview中更改原型单元格的单元格高度/背景时,在我为其创建额外的自定义单元类之前,它不会显示在应用程序中。我错过了什么?

if (indexPath.row == 0 || indexPath.row == 7)
{
    static NSString *CellIdentifier = @"TitleCell";
    UITableViewCell *cell1 = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    //heigh does not change -.-
    if (cell1 == nil){
        cell1 = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }
    return cell1;
}
else {
static NSString *CellIdentifier = @"FirstCell";
UITableViewCell *cell1 = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

if (cell1 == nil){
    cell1 = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
cell1.textLabel.text = [[articles objectAtIndex:indexPath.row]objectForKey:labelkey1];

1 个答案:

答案 0 :(得分:3)

它们是节标题。

您可以通过添加此方法添加节标题:

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

要添加多个部分,您需要从以下方法传递合适的值:

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
    return 7;
}

传递每个部分的行数:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
   return 2;
}

从上面的代码中,您将获得7个部分,每个部分包含2行。您需要相应地处理部分,行及其数据。

  

<强>的tableView:titleForHeaderInSection:

     

向数据源询问指定标题的标题   表格视图的一部分。    - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section参数

     

的tableView

The table-view object asking for the title.  section

An index number identifying a section of tableView .
     

返回值

     

用作节标题标题的字符串。如果你返回零   ,该部分将没有标题。讨论

     

表格视图对章节标题使用固定的字体样式。如果   你想要一个不同的字体样式,返回一个自定义视图(例如,一个   UILabel对象)在委托方法中   tableView:viewForHeaderInSection:相反。可用性

Available in iOS 2.0 and later.
     

另见

– tableView:titleForFooterInSection:
     

在UITableView.h中声明

参考:

  1. UITableViewDataSource
  2. UITableView