我的表格 View 中有两个部分。我使用 setSeparatorColor 属性来更改分隔符的颜色。它实际上改变了两个部分的颜色。是否可以根据部分更改分隔符颜色?
最佳答案
您可以通过在单元格的上方和下方添加两个一像素高的 subview 来实现此目的,以便它们呈现在 UITableView 分隔符的顶部。具体内容如下:
使用 IBOutlet UIView *topSeparator 属性和 IBOutlet UIView *bottomSeparator 属性创建 UITableViewCell 子类。
将 cell.clipsToBounds 设置为 NO。
使用 CGRectMake(0.0f, -1.0f, cell.width, 1.0) 框架构造 topSeparator,并将 backgroundColor 设置为所需的分隔符颜色。 (对于分组单元格,左右宽度减少 10 像素。)
使用 CGRectMake(0.0f, cell.height, cell.width, 1.0) 的框架构造bottomSeparator,并将backgroundColor 设置为所需的分隔符颜色。 (对于分组单元格,左右宽度减少 10 像素。)
返回该部分中的第一个单元格时,设置 topSeparator.hidden = YES; BottomSeparator.hidden = NO;.
返回该部分的最后一个单元格时,设置 topSeparator.hidden = NO; BottomSeparator.hidden = YES;.
返回该部分中的所有其他单元格时,设置 topSeparator.hidden = NO; BottomSeparator.hidden = NO;
顶部和底部都需要分隔符,以确保无论向上还是向下滚动,其中之一都会呈现在 UITableView 分隔符的顶部。
关于iphone - 如何根据部分更改分隔符的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2620159/