如何获取默认的细胞分离器颜色?另外,如何设置每个单元格的分隔符颜色?

时间:2016-06-11 17:28:08

标签: ios uitableview

我想在底部添加一个单元格,只显示当用户滚动到tableview底部时应用程序正在加载更多结果。我已经这样做了。问题是它是一个细胞。因此,当我向下滚动时,分隔符显示它只是表格中的另一个单元格。我想隐藏它。我必须更改该单元格的分隔符颜色,我该如何对特定单元格执行此操作?此外,我在何时/何时这样做?

我意识到如果我改变那个单元格的颜色(让我们说它是#5),当我得到结果并加载它们时,这不会导致单元格#5仍然有一个不可见的分隔符吗?那么如何将其设置回默认颜色?更具体地说,如何以编程方式获取tableviewcellseparator的默认颜色?

由于

2 个答案:

答案 0 :(得分:1)

这是一个简单的诀窍:你必须在故事板中的UIView内添加空UITableView。设置height = 0

UITableView的最后一个分隔符神奇地消失了。

enter image description here

修改

您还需要像这样编辑cellForRowAtIndexPath:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"identifier"];

    if (indexPath.row == [self tableView:tableView numberOfRowsInSection:[self numberOfSectionsInTableView:tableView]-1]-1) {
        //this is the last cell
        cell.separatorInset = UIEdgeInsetsMake(0, cell.bounds.size.width, 0, 0);
    } else {
        cell.separatorInset = UIEdgeInsetsMake(0, 0, cell.bounds.size.width, 0);
    }
    return cell;
}

答案 1 :(得分:0)

分隔符颜色是表格视图的属性,您可以像这样获取或设置它:

self.tableView.separatorColor = UIColor.blackColor()

但我认为你无法改变单个细胞的分离器颜色。

如果您真的需要这种级别的自定义,您可能应该自己绘制分隔条,例如,单元格顶部的细UIView。然后你可以改变它的外观到你想要的任何东西。