UITableView 中的分隔单元格

Posted

技术标签:

【中文标题】UITableView 中的分隔单元格【英文标题】:Separated cells in UITableView 【发布时间】:2012-09-28 13:44:55 【问题描述】:

我希望UITableView 显示分隔部分中的单元格(它们之间有距离、空格)。

所以我想出了这个:

InventoryViewController.m

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

    return 1;


- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView

    return [[[InventoryStore sharedInventory] allInventories] count];


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

    Inventory *p = [[[InventoryStore sharedInventory] allInventories]
                  objectAtIndex:[indexPath section]];

    StepperCell *cell = [tableView
                         dequeueReusableCellWithIdentifier:@"StepperCell"];

    [cell setController:self];
    [cell setTableView:tableView];

    [[cell nameLabel] setText:[p inventoryName]];
    [[cell valueLabel] setText:
     [NSString stringWithFormat:@"$%d", [p value]]];
    [[cell quantityLabel] setText:
     [NSString stringWithFormat:@"%d", [p quantity]]];
    cell.stepper.value = [p quantity];

    return cell;

当然还有 AppDelegate.m

InventoryViewController *inventoryViewController = [[InventoryViewController alloc] initWithStyle:UITableViewStyleGrouped];

我的问题是,有没有更好或更简单的方法来分隔单元格,但在同一部分? 我想要一个部分,并从一个数组中提取数据,但是这些单元格之间应该有距离。

【问题讨论】:

你可以试试这个:***.com/questions/4804632/uitableview-separator-line 或者这个:***.com/questions/3521310/… 【参考方案1】:

如果表格有空白分隔符(即 separatorStyle 设置为 UITableViewCellSeparatorStyleNone),那么您可以在每个单元格之间注入空白单元格。

例如

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
 if (indexPath.row % 2) 
 /* Your cell rendering code goes here */
 
 else 
  UITableViewCell * blankCell = ....;
 


- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

    return (numberOfInventoryItems * 2) - 1;

【讨论】:

以上是关于UITableView 中的分隔单元格的主要内容,如果未能解决你的问题,请参考以下文章

如何在 UITableView 中的单元格之间添加分隔符单元格/uiview?

如何删除 UITableView 中的单元格分隔符?

UITableview 默认单元格中的自定义分隔符显示意外行为

UITableView - 自定义 UITableViewCell 中的自定义 selectedBackgroundView 选择时隐藏单元格分隔符

iOS7 UITableView 部分中的最后一个单元格强制全宽分隔符

IOS UITableView检查一个单元格