2017-02-09 89 views
0

我創建了自定義集合視圖單元格。它有一個的UILabel的UIView的UIButton然後UITextView的使用自動佈局設置自定義集合視圖單元格的動態高度

要求爲

  1. UILabel的文字大小可以是任何東西。基於它的內容尺寸標籤必須重新尺寸。它工作正常。
  2. 可以將任意數量的視圖添加到UIView。基於這個UIView必須是重新大小
  3. UIButton只是一個普通的按鈕。當我們點擊它時,下面的TextView會切換。

我申請的限制是:

enter image description here

+0

集合視圖將單元尺寸是基於它的內容? – rishu1992

回答

-1

使用這種方法計算大小適合於你並返回。

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize { 
    let Labell : UILabel = UILabel() 

    Labell.text = self.items[indexPath.item] 
    let labelTextHeight = Labell.intrinsicContentSize.height 
    //calculate size for UIView, UIButton, TextView and then add it 
    return CGSize(width: /*fix width*/, height: labelTextHeigh + /*your UIView height and other height*/) 

} 

不要忘記延長您viewControllerUICollectionViewDelegateFlowLayout

+0

請告訴我如何計算大小的@Rock Balbao –

+0

@Rock Balbao,你已經分配了uilabel的文本。 –

+0

我正在創建一個臨時標籤,它將文本作爲label.text並計算其高度,從而以這種方式我將獲得將實時使用的標籤大小。我可以設置集合視圖的高度和標籤的高度+您希望保留在單元格之間的一些空間。 @RahulPatel –

相關問題