2017-10-10 131 views
0

我正在開發IOS App.Click到Tableview單元格比值顯示在collectionViewCell上,但我希望根據單元格更改collectionView高度。根據單元格的不更改單元格高度動態更改UICollectionView高度

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath { 
    return CGSizeMake(_collectionView.frame.size.width , _collectionView.frame.size.height+30); 

} 
+0

你想改變集合視圖高度或單元格高度? – ChanWarde

+0

你想改變基於細胞數量的collectionView高度嗎? –

+0

是根據細胞數改變collectionview的高度 –

回答

0

您需要添加該代碼

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize 
{ 
    var numberOfCellInRow : Int = yourArray.count 
    var padding : Int = 5 
    var collectionCellWidth : CGFloat = (self.view.frame.size.width/CGFloat(numberOfCellInRow)) - CGFloat(padding) 
    return CGSize(width: collectionCellWidth , height: collectionCellWidth) 
} 
0

您可以通過使用它的滾動視圖 的contentSize的的CollectionView被加載後更改它..如果你更新任何單元格中插入項目或刪除您需要的物品更新再次 高度即

myCollectionView.reload() 

現在更新幀或高度

//if you are using auto-resizing you can update frame 
let frame = myCollectionView.frame 
frame.height = myCollectionView.contentSize.height 
myCollectionView.frame = frame 

,如果您正在使用自動佈局品牌和IBOutlet中爲您的CollectionView的高度約束

@IBOutlet collectionViewHeightConstraint:NSLayoutContraint! 

現在更新這個contraint

collectionViewHeightConstraint.constant = myCollectionView.contentSize.height 
相關問題