2016-05-12 71 views
1

渲染UICollectionView

的细胞时科插图不尊重我有一个包含两个部分一个UICollectionView。 我从故事板给出了left = 5和right = 5的部分插入。 我对两个部分的单元格使用相同的.xib。 我输入单元的大小在sizeForItemAtIndexPath

func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize { 

     let itemWidth = self.collectionViewTrending.bounds.size.width - 10 
     if(indexPath.section == 0) { 

       return CGSizeMake(itemWidth , 200) 

     } else { 

      let product = self.products.objectAtIndex(indexPath.row) as! Product 
      let imageHeight = CGFloat(product.imageHeight) 
      return CGSizeMake(itemWidth, imageHeight * 0.81) 
     } 



    } 

问题是这样的:

对于第0,小区的中心和部分插图被推崇。

对于第1部分,尊重左侧部分插图,但右侧没有,并且第1部分的所有单元格的右侧边缘均触及collectionView的右侧边缘。

为什么会发生这种情况,我该如何解决?

回答

0

节插图适用于部分作为一个整体:

左侧插图影响部的左边缘和该部分中的第一单元的左边缘之间的空间。

右侧插入影响该部分中最后一个单元格的右边缘与该部分的右侧边缘之间的空间。

换句话说,你所看到的行为可能是因为你有节0只有一个格,而多个单元第1节

你可能想要的是细胞之间的空间中创建的外观每个单元格周围的边框。

为此,请在故事板中设置集合视图的最小间距/单元属性。或者在collectionView minimumInteritemSpacingForSectionAtIndex委托方法中动态设置它。