我希望我的单元格的宽度与每种屏幕尺寸上的屏幕宽度相同。由于该选项显示为灰色,因此无法在情节提要中设置约束,而以编程方式设置约束会导致错误,提示“无法使用锚点激活约束...因为它们没有共同的祖先”,即使我仅将约束设置为视图的前导和尾随锚。
现在设置情节提要的方式是,单元格在iPhone SE上具有所需的宽度,在较大的屏幕尺寸上具有相同的宽度。
答案 0 :(得分:0)
这可以帮助您将collectionView
宽度设置为与屏幕宽度相同。
在您的viewDidLoad()
中编写此代码
let height: CGFloat = 100.0 //Some constant
let width: CGFloat = self.view.frame.width
let spLayout = collectionView.collectionViewLayout as! UICollectionViewFlowLayout
spLayout.itemSize = CGSize(width: width, height: height)
答案 1 :(得分:0)
您可以使用委托方法
viewcontroller:UICollectionViewDelegateFlowLayout {
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
return CGSize.init(
width: collectionView.bounds.height,
height: collectionView.bounds.height
)
}