如何在uitableview中仅更改一个单元格的separatorColor
属性。如果我执行self.tableView.separatorColor = ...
,它会更改所有分隔符颜色。知道如何才能改变一个细胞吗?
答案 0 :(得分:4)
仅使用iOS API无法做到这一点。建议的方法是将separatorColor设置为UIColor.clearColor
,然后在单元格的setData函数中使用类似的方法实现自己的:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell:UITableViewCell = self.tableView.dequeueReusableCellWithIdentifier("cell") as UITableViewCell
if(condition for unique color) {
var bottomBorder = CALayer()
bottomBorder.backgroundColor = (special color)
bottomBorder.frame = CGRectMake(0, cell.frame.size.height - 1, cell.frame.size.width, 1)
cell.layer.addSublayer(bottomBorder)
}
else {
var bottomBorder = CALayer()
bottomBorder.backgroundColor = (unspecial color)
bottomBorder.frame = CGRectMake(0, cell.frame.size.height - 1, cell.frame.size.width, 1)
cell.layer.addSublayer(bottomBorder)
}
return cell
}
当然,您可以根据该单元格的数据设置要更改的颜色。
答案 1 :(得分:0)
为简单起见,您可以在uitableviewcell的底部添加uilabel,并为其设置约束。它在故事板中,因此更容易 这个uilabel框架是(0,cell.frame.size.heigh - 1,cell.frame.size.width,1)