swift – 如何以编程方式设置UICollectionViewCell Width和Height

前端之家收集整理的这篇文章主要介绍了swift – 如何以编程方式设置UICollectionViewCell Width和Height前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试实现CollectionView。
当我使用Autolayout时,我的细胞不会改变大小,而是改变它们的对齐方式。

现在我宁愿将其大小更改为例如

//var size = CGSize(width: self.view.frame.width/10,height: self.view.frame.width/10)

我尝试在我的CellForItemAtIndexPath中进行设置

collectionCell.size = size

它虽然没有用。

有没有办法实现这个目标?

编辑:

似乎答案只会改变我的CollectionView宽度和高度本身。约束中是否存在冲突?有什么想法吗?

使用此方法设置自定义单元格高度宽度。

确保添加此协议

UICollectionViewDelegate

UICollectionViewDataSource

UICollectionViewDelegateFlowLayout
@H_502_26@

Objective-c

@interface YourViewController : UIViewController<UICollectionViewDelegate,UICollectionViewDataSource,UICollectionViewDelegateFlowLayout>

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath
{
    return CGSizeMake(CGRectGetWidth(collectionView.frame),(CGRectGetHeight(collectionView.frame)));
}
@H_502_26@

Swift 4

extension YourViewController: UICollectionViewDelegate,UICollectionViewDelegateFlowLayout {

    func collectionView(_ collectionView: UICollectionView,layout collectionViewLayout: UICollectionViewLayout,sizeForItemAt indexPath: IndexPath) -> CGSize {
         return CGSize(width: screenWidth,height: screenWidth)
    }

}

猜你在找的Swift相关文章