如何自动调整单元格大小以适合每行 4 个 [重复]
Posted
技术标签:
【中文标题】如何自动调整单元格大小以适合每行 4 个 [重复]【英文标题】:How to automatically resize cells to fit 4 per line [duplicate] 【发布时间】:2017-04-24 15:13:11 【问题描述】:我有一个集合视图,我正在寻找一种方法来找出每个单元格可以有多大以适应每行 4 个单元格(在特定的屏幕尺寸上)并在所有单元格上使用该尺寸。我有一个可重复使用的单元格,可用于其余单元格。
【问题讨论】:
【参考方案1】:extension LevelSelectController: UICollectionViewDelegateFlowLayout
// Collection view flow layout setup
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize
// Compute the dimension of a cell for an NxN layout with space S between
// cells. Take the collection view's width, subtract (N-1)*S points for
// the spaces between the cells, and then divide by N to find the final
// dimension for the cell's width and height.
let cellsAcross: CGFloat = 4
let spaceBetweenCells: CGFloat = 0
let dim = (collectionView.bounds.width - (cellsAcross - 1) * spaceBetweenCells) / cellsAcross
return CGSize(width: dim, height: dim)
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets
return UIEdgeInsetsMake(0, 0, 0.0, 0.0)
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat
return 0.0
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat
return 0.0
【讨论】:
以上是关于如何自动调整单元格大小以适合每行 4 个 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何强制调整 indexWidgets 的大小以适合 Qt5 QTableView 的单元格