问题描述
我正在尝试使用FUNCTION findHighest(dataArray returns array)
BEGIN
FOR items in dataArray
IF highest[1] is already set
IF value > highest[1]
highest[0] ← key
highest[1] ← value
END IF
ELSE
highest[0] ← key
highest[1] ← value
END IF
END FOR
RETURN highest
END
创建电影海报的网格。
但是我在细胞高度上挣扎。
问题是当我设置时,我需要每行渲染3个海报。它会自动计算宽度,因此基本上,不同设备上的宽度会有所不同。
是否可以维持纵横比或访问单元格宽度以计算CompositionalLayout
中的高度?
我也尝试使用.absolute()
,但其行为与.estimated(100)
相同
这是我现在的代码,单元格高度是硬编码的。
.absolute(100)
解决方法
将组的高度设置为fractionalWidth
。下面的代码段将使该单元格的高度始终为屏幕高度的30%。您也可以编写自己的高度确定逻辑并将其包装在.absolute(customHeight)中。
let groupSize = NSCollectionLayoutSize(widthDimension: .fractionalWidth(1.0),heightDimension: .fractionalWidth(0.3))