Collectionview细胞标签上没有填充

时间:2017-04-10 14:19:24

标签: ios swift uicollectionview

我正在尝试在包含2个部分的页面上构建集合视图。我希望第1部分细胞染成黄色,第2部分细胞染成蓝色。

我设法让collectionview单元显示出来 - 但是单元格之间似乎没有任何填充 - 以及背景颜色的结束位置。如何在细胞周围添加更多彩色填充物以使其看起来更整洁? (理想情况下使用界面构建器) 截图: Collectionview no  padding

编辑:将Edge Insets添加到我的自定义单元格后 - 它让我更接近我所追求的但似乎截断文本 - 并删除我的圆角:

代码:

override func drawText(in rect: CGRect) {
    let insets = UIEdgeInsets.init(top: 5, left: 5, bottom: 5, right: 5)
        super.drawText(in: UIEdgeInsetsInsetRect(rect, insets))
    }

Insets

有没有办法让UICollectionViewFlowLayoutAutomaticSize考虑额外的10宽度并保持圆角(使用插图时)?

2 个答案:

答案 0 :(得分:2)

如果您使用的是UICollectionViewFlowLayout,则可以通过设置布局实例的属性来调整Interface Builder中的行间距和项目间距。

您可以在Interface Builder的左窗格中的UICollectionView实例下方/内找到布局实例。

  1. 打开Interface Builder
  2. UICollectionViewFlowLayout
  3. 中查找UICollectionView个对象
  4. 在右侧窗格中选择Size Inspector标签
  5. 更改Min Spacing
  6. 注意:这会在您的单元格之间留出一些空间。如果要更改单元格或标签的内容插入,则应使用自定义单元格。 要向UILabel添加内容插入内容,您可以查看this question和/或that question

答案 1 :(得分:0)

您可以先在单元格中使用UIView,然后设置约束条件,然后在该视图中添加标签。

最后根据您的选择为细胞,UIView标签提供适当的颜色。