2016-12-26 92 views
0

我有一個垂直流收集視圖,除了單元格大小以外,在自動佈局中約束一切。CollectionView單元格大小限制

collectionview被限制在屏幕的兩側,圖像和文本被限制在自定義單元內。但我似乎無法將單元格限制在集合視圖中,所以當我更改設備大小時,單元格保持與創建它的屏幕相同的大小。

有什麼辦法解決這個問題?

回答

1

改變尺寸電池的應通過實施collectionView(_:layout:sizeForItemAt:)確定:

詢問委託指定項目的單元格的大小。

Obvoisly,你的ViewController應該符合UICollectionViewDelegateFlowLayout

那麼,你能做些什麼 - 因爲示例 - :

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize { 
    let screenSize: CGRect = UIScreen.main.bounds 
    return CGSize(width: screenSize.width/2, height: screenSize.height/2) 
} 

這應該使小區的大小:它與被等同於屏幕尺寸的一半,高度等於給屏幕尺寸的一半,無論什麼'設備...

希望這有助於。