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

标签 iphone uitableview iphone-sdk-3.0

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

最佳答案

您可以通过在单元格的上方和下方添加两个一像素高的 subview 来实现此目的,以便它们呈现在 UITableView 分隔符的顶部。具体内容如下:

  1. 使用 IBOutlet UIView *topSeparator 属性和 IBOutlet UIView *bottomSeparator 属性创建 UITableViewCell 子类。

  2. 将 cell.clipsToBounds 设置为 NO。

  3. 使用 CGRectMake(0.0f, -1.0f, cell.width, 1.0) 框架构造 topSeparator,并将 backgroundColor 设置为所需的分隔符颜色。 (对于分组单元格,左右宽度减少 10 像素。)

  4. 使用 CGRectMake(0.0f, cell.height, cell.width, 1.0) 的框架构造bottomSeparator,并将backgroundColor 设置为所需的分隔符颜色。 (对于分组单元格,左右宽度减少 10 像素。)

  5. 返回该部分中的第一个单元格时,设置 topSeparator.hidden = YES; BottomSeparator.hidden = NO;.

  6. 返回该部分的最后一个单元格时,设置 topSeparator.hidden = NO; BottomSeparator.hidden = YES;.

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

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

关于iphone - 如何根据部分更改分隔符的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2620159/

相关文章:

iphone - 我仍如何播放iPhone(ipod touch)被锁定但程序正在运行的声音?

iphone - NSLocalizedString 和 AMLocalizedString 之间的区别

ios - 应用程序在 iPhone 6s 的 'peek and pop' 实现中卡住

ios - UISearchController:UITableView 的 Section Index 与 searchBar 重叠

ios - Uitableviewcell 在尝试显示谷歌广告时不显示任何内容

objective-c - 在 sqlite3 中传递列名而不是索引

iphone - UITextView 子类点击 didSelectRowAtIndexPath

ios - UITableview 不通过 willdisplaycell 选择单元格

iphone - UITableView 第一次加载时不响应滚动

iphone - 根据用户输入以不同语言显示 iPhone 键盘