我有UITableView
,其中每个单元格为320x195px,单元格之间没有分隔符。
在每个单元格内部,我放置一个UICollectionView
来占据整个单元格,该单元格也是320x195并包含UICollectionViewCell
s,也是320x195px。在Interface Builder中,我已将所有section insets,min spacing,header和footer size指定为0,并指定布局应该水平流动。
我发现,当它运行时,我桌子上的每个单元格下都有一条黑线。使用精彩的Reveal框架,我追溯到这个问题,即UICollectionView
似乎在运行时将自身调整为320 x 196px ,导致底部的1px间隙每个细胞。 UITableViewCell
和内部UICollectionView
单元格都保持在320x195,但UICollectionView
正在调整自身大小并向其高度添加1px。
我无法为我的生活找出可能导致UICollectionView
像这样调整自身大小的原因。现在我所做的就是将UICollectionView
的大小更改为320 x 194px ,这样现在当它添加1px时,它至少会出现在正确的高度并防止黑色底部的差距 - 但这是一个骗子,我宁愿知道这个的根本原因所以我下次知道。
唯一可能与此相关的是我的根UITableViewCell
有一个子视图,即“内容视图”(因为所有UITableViewCell
似乎都被迫拥有),而IB告诉我我认为这个视图的大小是320x194(任何调整它的选项都是灰色的)。
答案 0 :(得分:1)
我有同样的问题,并找到原因:在我的情况下,这是因为UICollectionView的y位置的实例是像素分数,如10.5 我的解决方案:将y位置围绕整数(10)