Ios 集合视图间距会打断ui
我正在尝试创建一个如下所示的UI 为此,我使用了Ios 集合视图间距会打断ui,ios,uicollectionview,uicollectionviewcell,uicollectionviewlayout,Ios,Uicollectionview,Uicollectionviewcell,Uicollectionviewlayout,我正在尝试创建一个如下所示的UI 为此,我使用了UICollectionView和FlowLayout 为了将第一个单元格显示为全宽,将剩余单元格显示为3列,我实现了SizeFormiteIndeXPath:和MinimumineItemSpacingForSectionAtIndex方法: func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLay
UICollectionView
和FlowLayout
为了将第一个单元格显示为全宽,将剩余单元格显示为3列,我实现了SizeFormiteIndeXPath:
和MinimumineItemSpacingForSectionAtIndex
方法:
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize
{
var cellSize = CGSizeZero
if indexPath.item == 0
{
let width = self.cvMedia.frame.width - 20
let height = (width * 9)/16
cellSize = CGSize(width: width, height: height)
}
else
{
let width = self.cvMedia.frame.width / 3 - 20
let height = (width * 16)/9
cellSize = CGSize(width: width, height: height)
}
return cellSize
}
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAtIndex section: Int) -> CGFloat
{
return 20.0
}
但我在iphone6splus和iphone6plus中得到了以下输出:
我尝试将项目间距从20改为19,它在模拟器上工作,但在实际设备上它仍然显示相同的行为。如果我更改间距值,我在某些设备版本上获得了正确的输出,而在某些版本上无法工作。我可以添加设备版本检查,并基于此返回值。但这不是一个优雅的解决方案,它将在未来的版本中崩溃。有人能帮我解决这个问题吗?提前感谢。检查此项,并将单元格和线的最小间距值更改为0制作此布局时,应使用集合视图的宽度作为参数 比如说,
cellWidth = ( collectionView?.bounds.width - minimumSpacing * (numberOfCellsInARow - 1 ) ) / numberOfCellsInARow
在运行时,在ViewWillAspect()或CellForRowatineXpath()上计算单元格的大小
场景:
cellWidth = ( collectionView?.bounds.width - minimumSpacing * (numberOfCellsInARow - 1 ) ) / numberOfCellsInARow
装置的宽度为320磅。Collectionview的宽度为300pt(间距为10pt L&R)单元格之间的间距为20pt。手机需要3个!!
单元格大小:
现在..开始用任何一种方法计算
单元间距=(3-1)*20=2*20=40pt
剩余集合视图宽度=300pt-40pt=260pt
单元尺寸=260pt/3=86.667 pt。(86磅进近)
在代码中:
cellWidth = ( collectionView?.bounds.width - minimumSpacing * (numberOfCellsInARow - 1 ) ) / numberOfCellsInARow
而且,这只给出了单元格宽度。你也需要手机的高度。
您可能已经有了单元格的纵横比。使用该值,还可以计算单元高度
亲切的问候,Suman Adhikari你从情节提要中删除了默认的插图了吗?@Happiehappie:没有,我没有更改情节提要中的任何内容。