【问题标题】:iPhone - inserting space between custom table cells in UITableViewiPhone - 在 UITableView 中的自定义表格单元格之间插入空格
【发布时间】:2011-04-10 00:51:43
【问题描述】:

我有一个 UITableView,里面有自定义单元格。我想在单元格之间添加一个小红条,让单元格更加清晰。

有没有简单的方法可以做到这一点?

谢谢!

【问题讨论】:

    标签: iphone uitableview


    【解决方案1】:

    使用UITableViewseparatorStyleseparatorColor 属性。例如:

    - (void) viewDidLoad
    {
      self.tableView.separatorColor = [UIColor redColor];
      self.tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;
    }
    

    该样式是默认样式,还有一些其他样式,但取决于您所针对的操作系统(例如,蚀刻样式仅在 3.2 中可用)。

    Apple's docs on the UITableView

    【讨论】:

    • 我看到了——有什么办法可以让线条变粗吗?
    • 好问题。我想知道自己的答案。我认为,可能最好的方法是在每个单元格的底部添加几个像素高的视图,而不是在一个部分的最后一个单元格上。此外,在未来 - 请在您的问题中添加您已经尝试过的内容,这将帮助每个人为您提供更多您正在寻找的答案:)
    【解决方案2】:

    1- 覆盖

    -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    

    如果 indexPath.row % 2 == 1(奇数 indexpath 行),删除单元格上的文本,将红色设置为背景色并返回该单元格。如果您使用数组填充表格,则必须考虑额外的红色单元格并相应地填充。

    2 - 编写一个自定义 UITableView 单元格,底部有一些额外的红色空间,然后在 cellForRowAtIndexPath 上返回该单元格。如有必要,删除底部单元格上的红色空间。

    【讨论】:

    • 不知道,感觉像是在滥用 UITableView。
    • 我不这么认为。现在我正在审查这个问题,我想说简单地将表格的 backgroundColor 设置为 [UIColor redColor] 并覆盖 heightForRowAtIndexPath 以返回单元格高度 + 红色空间应该可以解决问题,而不是我的第一个解决方案,这有点复杂。我已经使用我的第二个解决方案将子视图插入到带有动画的单元格中,这对我来说似乎没有错,但我愿意接受建议。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-04
    • 2011-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多