UICollectionView:contentSize和bounds有什么区别?

时间:2016-06-18 13:38:23

标签: objective-c swift cocoa-touch uicollectionview uicollectionviewlayout

有什么区别:

self.collectionView.contentSize.heightself.collectionView.bounds.origin.y

后者似乎总是小于前者?

任何澄清的草图都将受到高度赞赏。

2 个答案:

答案 0 :(得分:0)

contentSize是内容的大小,通过滚动显示。假设你有10个细胞大小为3600x1200。然后内容大小将是3600x1200。 Bound将是collectionview的实际框架。

了解更多信息

  1. contentSize不是UICollectionView的直接属性。它来自UIScrollViewcheck here
  2. 快乐的编码。

答案 1 :(得分:0)

self.collectionView.bounds.origin.y的值为0.因为UIView的边界是由其自己的坐标系表示的矩形。 请参阅Cocoa: What's the difference between the frame and the bounds?

self.collectionView.contentSize.height = scrollview的contentSize

让你有一个集合视图(垂直滚动),其框架为(0,64,320,504),每个单元格的大小为(100,100),你有20项。因此,集合视图的每一行包含3个单元格。现在,要在collectionview 7行中生成20个项目,我们可以通过垂直滚动来查看所有这些项目。

集合视图的实际大小为(320,504),内容大小为(320,700)。

注意:假设collectionview是垂直滚动的,两行之间没有空格。