2016-09-16 108 views
-1

我有一個自定義流佈局。我知道我的細胞需要在哪裏。我目前爲每個單元格創建特定的框架。但是,我擔心不同大小的iPhone,所以我想探索創造約束條件。我知道這必須在函數 prepareForLayout()中完成。自定義UICollectionViewLayout和約束條件

override func prepareLayout() { 
    for item in 0 ..< collectionView!.numberOfItemsInSection(0){ 
     let indexPath = NSIndexPath(forItem: item, inSection: 0) 
     let attributes = UICollectionViewLayoutAttributes(forCellWithIndexPath: indexPath) 
     cache.append(attributes) 
    } 
    //This is where I want to do work for creating constraints for my cells 
} 

我想創建自己的自定義流程佈局時,可問題是你創建的細胞之間的約束

回答

0

是你能創建自己的自定義流程佈局時創建的細胞之間的約束問題

編號約束和集合視圖佈局是相反的。集合視圖佈局逐幀放置。

但是,您知道集合視圖尺寸(self.collectionView!.bounds.size),所以您的項目框架可以考慮這一點。他們應該這樣做!畢竟,這是一個正常的流佈局如何工作,當它間隔一排,以便它左右對齊。這只是做一些基本算術的問題。