如何根据部分更改分隔符的颜色

Posted

技术标签:

【中文标题】如何根据部分更改分隔符的颜色【英文标题】:how to change the colors of separators based on section 【发布时间】:2010-04-12 06:06:10 【问题描述】:

我的表格视图中有两个部分。我使用 setSeparatorColor 属性来更改分隔符的颜色。它实际上改变了两个部分的颜色。是否可以根据部分更改分隔符颜色?

【问题讨论】:

【参考方案1】:

您可以通过在单元格的上方和下方添加两个 1 像素高的子视图来完成此操作,以便它们呈现在 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 像素。)

    返回section中第一个单元格时,设置topSeparator.hidden = YES; bottomSeparator.hidden = NO;.

    返回section最后一个单元格时,设置topSeparator.hidden = NO; bottomSeparator.hidden = YES;.

    当返回部分中的所有其他单元格时,设置 topSeparator.hidden = NO; bottomSeparator.hidden = NO;

您需要顶部和底部的分隔符,以确保其中一个呈现在 UITableView 的分隔符之上,无论您是向上还是向下滚动。

【讨论】:

我刚刚创建了几张图片并将它们设置为背景以显示部分分隔符。【参考方案2】:

尝试在方法“didSelectRowAtIndexPath”中更改分隔符颜色

它将在选择时生效。

如果有任何意见,请发表评论。

【讨论】:

:( 不。它不工作。[self.tableView setSeperatorColor:[UIColor greenColor]]; 尝试应用 TintColor 功能

以上是关于如何根据部分更改分隔符的颜色的主要内容,如果未能解决你的问题,请参考以下文章

如何更改 SwiftUI 列表中分隔符的颜色?

更改 UINavigationBar 的分隔符颜色

如何更改 Android ListView 分隔线的颜色?

带有静态单元格的 UITableView - 每个部分的分隔颜色不同?

如何更改警报对话框标题分隔线颜色android

Android:如何更改日期选择器分隔线的颜色?