ios – UICollectionView 3列网格,1px空格? (包括图像)

ios – UICollectionView 3列网格,1px空格? (包括图像),第1张

概述我已经设置了一个带有FlowLayout的UICollectionView,在垂直或水平方向上在单元格之间不留空格. 我有一切工作,但在第二和第三列之间有一个奇怪的1px空间,我不知道为什么!我已经验证了iOS模拟器和实际设备上的1px差距.有没有人经历过这个? 我的UIViewController是以下代理/数据源: MyViewController类:UIViewController,UICo 我已经设置了一个带有FlowLayout的UICollectionVIEw,在垂直或水平方向上在单元格之间不留空格.

我有一切工作,但在第二和第三列之间有一个奇怪的1px空间,我不知道为什么!我已经验证了iOS模拟器和实际设备上的1px差距.有没有人经历过这个?

我的UIVIEwController是以下代理/数据源:

MyVIEwController类:UIVIEwController,UICollectionVIEwDelegate,UICollectionVIEwDataSource,UICollectionVIEwDelegateFlowLayout

我已经实现了必要的功能来删除任何间距(并使用打印语句进行验证),以及彼此排列的单元格的视觉确认:

func collectionVIEw(collectionVIEw: UICollectionVIEw,layout collectionVIEwLayout: UICollectionVIEwLayout,insetForSectionAtIndex section: Int) -> UIEdgeInsets {    return UIEdgeInsetsZero}func collectionVIEw(collectionVIEw: UICollectionVIEw,minimumInteritemSpacingForSectionAtIndex section: Int) -> CGfloat {    return 0}func collectionVIEw(collectionVIEw: UICollectionVIEw,minimumlinespacingForSectionAtIndex section: Int) -> CGfloat {    return 0}

最后,我打印出要返回的单元格的宽度(每个颜色正方形),以验证它是(vIEw.frame.wIDth / 3)还是(320/3),这是106.666667

func collectionVIEw(collectionVIEw: UICollectionVIEw,sizeforItemAtIndexPath indexPath: NSIndexPath) -> CGSize {    var totalHeight: CGfloat = (self.vIEw.frame.wIDth / 3)    var totalWIDth: CGfloat = (self.vIEw.frame.wIDth / 3)    println(totalWIDth) // this prints 106.666666667    return CGSizeMake(totalWIDth,totalHeight)}
解决方法 在类似情况下更好地避免数字的双重类型.
使用:
return CGSizeMake(ceil(totalWIDth),ceil(totalHeight))
总结

以上是内存溢出为你收集整理的ios – UICollectionView 3列网格,1px空格? (包括图像)全部内容,希望文章能够帮你解决ios – UICollectionView 3列网格,1px空格? (包括图像)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1111425.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存