我想从以下更改collectionViewCell大小
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
为此,我这样做:
(collectionView.collectionViewLayout as! UICollectionViewFlowLayout).itemSize = 1000
但它根本不会改变大小。另外,我还有下一个功能:
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
var newSize: CGSize?
let width = CGRectGetWidth(collectionView.frame)
newSize = CGSize(width: width, height: width + 100)
return newSize!
}
因此,如何从
cellForItemAtIndexPath
覆盖它? 最佳答案
您需要在项目中包括UICollectionViewDelegateFlowLayout
,然后实现- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath;
方法来设置集合视图的单元格大小。