ios - 单元格间距为零的 UICollectionView

标签 ios iphone uicollectionview swift3 uicollectionviewlayout

我关注了this answer并尝试每行实现 5 个单元格,当我如下检查 iPhone 6 和 iPhone SE 时效果很好。

但是当我尝试在 iPhone 6 Plus 上运行它时会出现问题。任何人都可以帮我解决这个问题吗?

这是我的代码。

screenSize = UIScreen.main.bounds
screenWidth = screenSize.width
screenHeight = screenSize.height
let itemWidth : CGFloat = (screenWidth / 5)

let layout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
layout.minimumInteritemSpacing = 0
layout.minimumLineSpacing = 0
layout.itemSize = CGSize(width: itemWidth, height: itemWidth)
layout.minimumInteritemSpacing = 0
layout.minimumLineSpacing = 0
layout.sectionInset = UIEdgeInsets(top: 10.0, left: 0, bottom: 10.0, right: 0)
collectionView!.collectionViewLayout = layout

最佳答案

它一定要是

let itemWidth : CGFloat = (screenWidth / 5.0)

所以结果不会四舍五入。

更新

请确保如果您使用 Storyboard创建 UICollectionView,请记住将自动布局设置为 Collection View 的大小,以便将其更新为当前屏幕大小。

更新 2

如果您使用 Storyboard ,则无需创建 UICollectionViewFlowLayout .您可以从 Storyboard 中设置插图和间距。
然后在你的.m文件实现这个来确定项目的大小。
- (CGSize)collectionView:(UICollectionView *)collectionView
                  layout:(UICollectionViewLayout *)collectionViewLayout
  sizeForItemAtIndexPath:(NSIndexPath *)indexPath
{
     return yourDesiredSize;
}

关于ios - 单元格间距为零的 UICollectionView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40231832/

相关文章:

ios - 为什么这不会崩溃?

ios - iOS 键盘扩展中的多个键盘布局

iphone - 在 iPhone 的 OpenGL ES 中对球体进行纹理处理

iphone - 以特定风格在 iPad 上播放视频

ios - 如何在 Scroll 上为 UICollectionViewCell 的大小设置动画,以便中间的最大?

ios - 从组织者应用提交应用后,iTunes Connect 的事件中未显示

iphone - 有没有适用于 Android 的 iUI

ios - Collectionview.reloaddata() 之后无法选择 UICollectionViewcell

ios - 第二列中的 UICollectionView 单元格没有响应

ios - 在具有字典作为“值”的字典中追加和更新