【问题标题】:UICollectionView draw lines between the cellsUICollectionView 在单元格之间画线
【发布时间】:2014-02-03 18:50:30
【问题描述】:

有没有办法在 UICollectionView 中的单元格之间画线?我不想为每个单元格添加边框,这将导致仅当集合中有任何单元格时才绘制线条。我正在寻找的是类似于 UITableView 的线条:即使表格视图有 0 个单元格,它们也在那里。

【问题讨论】:

  • 我也对此感兴趣。一种方法是创建细长的矩形视图对象并将它们绘制在单元格之间。
  • 是的,我应该在哪里添加细矩形?
  • 我最终编写了自己的自定义布局类。对于我的用例,这样做比创建依赖流布局的奇怪装饰视图更合乎逻辑。我在布局实现中手动计算了这些的尺寸。它并不像听起来那么糟糕。话虽如此,您应该能够提供这些行作为补充或装饰视图。只需查找标准的 UICollectionView 文档即可。

标签: ios objective-c cocoa-touch uikit uicollectionview


【解决方案1】:

我通过向 collectionView 添加视图解决了这个问题。 我使用单元格框架坐标来确定我想要绘制的位置。

但是,可能有更好的方法来做到这一点?

【讨论】:

    【解决方案2】:

    如果您的单元格高度相同,您可以为UITableView 创建合适的背景。绘制图案图像并将其作为backgroundColor 属性应用:

    UIImage *patternImage = [UIImage imageNamed:@"pattern.png"];
    tableView.backgroundColor = [UIColor colorWithPatternImage:patternImage];
    

    统一更新:不正确中评论这个答案。背景随着tableView(或scrollView)内容滚动。

    【讨论】:

    • 向下/向上滚动并且单元格移动时会失败。
    • @ValentinRadu,你错了。模式随 tableView 内容移动(与 scrollView 相同)。