如何在Swift中为UICollectionViewCell添加背景图片?

4

我原先以为在UICollectionViewCell中添加背景图片很容易,但是我现在有些困难。我有一张像这样的边框图片,我想要添加到我的UICollectionView中的每个单元格。

border.png

enter image description here

我没有在 Interface Builder 中找到添加选项,并且不确定在UICollectionViewCell上应该使用哪种方法进行编程。

我看过了这些类似的问题:


我尝试在IB中添加它,但没有类似于UIButton的添加方式。 - Suragch
3个回答

6

我知道这是一个旧问题,已经有一个被接受的答案。但是为什么不直接设置单元格的边框呢:

func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell
{
    let cell  = collectionView.dequeueReusableCellWithReuseIdentifier("Cell", forIndexPath: indexPath) 

        cell.layer.borderWidth = 1.5
        cell.layer.borderColor = UIColor.blueColor().CGColor
        cell.layer.cornerRadius = 4

  return cell
}

这样你就不需要使用图像了。只需调整边框宽度和圆角半径,直到达到所需效果为止。


1
我认为当我写这个问题时,我还没有学会如何在图层上添加边框。后来我将其作为更新添加到了此答案中。所以是的,你在这里的答案是我原始问题的更好解决方案(+1)。但由于我的问题是如何添加背景图片,所以我应该保留已接受的答案。并非所有背景图片都必须是边框。 - Suragch

4
let View=UIView()
View.backgroundColor=UIColor(patternImage:UIImage(named:"border.png")!)
cell.backgroundView=View

在`UICollectionView`的`cellForItemAtIndexPath`方法中。

1
不使用IB也可以。我无法弄清楚两种方式,所以这种方式也很有帮助。 - Suragch

1
在您的CollectionViewCell中添加一个UIImageView,并将此图像设置为图像。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接