尝试将NSLayoutDimension转换为CGFloat时出错
我当前正在尝试将NSLayoutDimension转换为CGFloat,以便我可以使我的集合视图符合特定的布局。尝试将NSLayoutDimension转换为CGFloat时出错
let spacing: CGFloat = 3 let width = CGFloat(myCollectionView.widthAnchor)
let height = CGFloat(myCollectionView.heightAnchor)
let itemWidth = width/3 - spacing
let itemHeight = height/3 - spacing
var itemSize: CGFloat = 0
if itemWidth >= itemHeight {
itemSize = itemWidth
}
else if itemHeight > itemWidth {
itemSize = itemHeight
}
let layout = UICollectionViewFlowLayout()
layout.sectionInset = UIEdgeInsetsMake(20, 0, 10, 0)
layout.itemSize = CGSize(width: itemWidth, height: itemHeight)
layout.minimumInteritemSpacing = spacing
layout.minimumLineSpacing = spacing
myCollectionView.collectionViewLayout = layout
设定的宽度和高度是给的误差:
不能调用初始化为类型“CGFloat的”类型的自变量列表“(NSLayoutDimension)”。
我已经尝试设置为一个浮动,然后将浮动转换为cgfloat,但那也没有奏效。
有谁知道如何将NSLayoutDimension转换为CGFloat?
任何帮助非常感谢
谢谢。
回答:
,如果你希望你的集合视图的宽度和高度,尝试下面的代码:
let width = CGFloat(myCollectionView.frame.width) let height = CGFloat(myCollectionView.frame.height)
以上是 尝试将NSLayoutDimension转换为CGFloat时出错 的全部内容, 来源链接: utcz.com/qa/264884.html