集合视图单元大小/拟合问题
Posted
技术标签:
【中文标题】集合视图单元大小/拟合问题【英文标题】:Collection View Cell Size/Fitting issue 【发布时间】:2018-02-15 13:09:47 【问题描述】:我正在 swift 4 中开发 ios 应用程序。我已经实现了集合视图,并且前面有两个单元格,如图所示:
当我在更大的屏幕尺寸(如 iPhone 6/7/8 Plus)上运行我的应用程序时,它会显示两个完整的单元格和半个单元格。我想要实现的是它在每个屏幕尺寸前显示两个单元格,请帮助。
【问题讨论】:
寻找optional func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize
developer.apple.com/documentation/uikit/…
How to set UICollectionViewCell Width and Height programmatically的可能重复
试试这个: func collectionView(_ collectionView: UICollectionView,layout collectionViewLayout: UICollectionViewLayout,sizeForItemAt indexPath: IndexPath) -> CGSize return CGSize(width: collectionView.frame.size.width , height:collectionView. frame.size.height/2)
试过这段代码但没有成功。一切都保持不变。
【参考方案1】:
在你的 ViewController 中实现UICollectionViewDelegateFlowLayout
协议,然后实现:
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize
let cellSize = //calculate cell size based on the width of the view and padding between cells
return cellSize
查看documentation 中的UICollectionViewDelegateFlowLayout
并实现其方法来修改单元格之间的间距。
【讨论】:
以上是关于集合视图单元大小/拟合问题的主要内容,如果未能解决你的问题,请参考以下文章