gpt4 book ai didi

ios - 当我滚动屏幕时,UICollectionViewCell 的大小会有所不同

转载 作者:行者123 更新时间:2023-11-29 00:48:52 24 4
gpt4 key购买 nike

我创建了一个 UICollectionViewController,我希望它在每行中显示三个单元格。每个单元格的宽度应为整个屏幕的 1/3。但是,当我第一次进入 UICollectionViewController 场景时,所有的单元格都非常小。当我滚动屏幕时,一些单元格变成具有预期大小的较大单元格。 enter image description here enter image description here enter image description here

我的部分代码:

class imageCollectionViewController: UICollectionViewController {
private let reuseIdentifier = "photoCell"
var photos:albumCellModel?
override func viewDidLoad() {
super.viewDidLoad()
navigationController?.toolbarHidden = true

if let layout = collectionView!.collectionViewLayout as? UICollectionViewFlowLayout {
let itemWidth = view.bounds.width / 3.0
let itemHeight = layout.itemSize.height
layout.itemSize = CGSize(width: itemWidth, height: itemHeight)
layout.invalidateLayout()
}
}
override func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int {

return 1
}
override func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
if let photos = photos
{
return photos.photoSet.count
}
return 0
}

override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier("photoCell", forIndexPath: indexPath) as! imageCollectionViewCell
cell.imageView.image = photos?.photoSet[indexPath.row].image
return cell
}

最佳答案

我在之前的项目中确实遇到了同样的问题。我设法通过使用这个库解决了这个问题。 Snapkit .在pod中导入库,在cellForItemAtIndexPath

中实现
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {

let cell = collectionView.dequeueReusableCellWithReuseIdentifier(cellIdentifier, forIndexPath: indexPath) as! TestCell
let width = self.view.bounds.size.width/2 - 10
cell.imageView.snp_makeConstraints { (make) -> Void in
make.width.equalTo(width)
make.height.equalTo(3*width/2)
}

return cell

}

只需在 Storyboard 中的 imageView 上放置顶部和前导约束。希望对您有所帮助。

关于ios - 当我滚动屏幕时,UICollectionViewCell 的大小会有所不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38363237/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com