Swift - 以编程方式更改 UICollectionViewCell 大小
Swift - Change UICollectionViewCell size programmatically
我正在努力更改 CollectionView 中项目的大小。
自定义流程布局 class 找到 here:
这是我的收藏视图:
class ExampleViewController: UIViewController, UICollectionViewDataSource {
let theCollectionView: UICollectionView = {
let v = UICollectionView(frame: CGRect.zero, collectionViewLayout: UICollectionViewFlowLayout())
v.translatesAutoresizingMaskIntoConstraints = false
v.backgroundColor = .white
v.contentInsetAdjustmentBehavior = .always
v.layer.cornerRadius = 30
return v
}()
let columnLayout = FlowLayout(
itemSize: CGSize(width: 50, height: 50),
minimumInteritemSpacing: 10,
minimumLineSpacing: 10,
sectionInset: UIEdgeInsets(top: 20, left: 20, bottom: 10, right: 20)
)
我尝试更改 itemSize 但那没有任何作用。
这是 CollectionViewCell 大小更改的代码
(注意:- 根据您的要求更改值!)
let layout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
layout.sectionInset = UIEdgeInsets(top: 20, left: 0, bottom: 10, right: 0)
layout.itemSize = CGSize(width: screenWidth/4, height: screenWidth/4)
layout.minimumInteritemSpacing = 0
layout.minimumLineSpacing = 0
cell2.collectionView2.collectionViewLayout = layout
您没有将 flowLayout
分配给 collectionView
或者尝试:
theCollectionView.collectionViewLayout = columnLayout
或
首先定义你的布局:
let columnLayout = FlowLayout( ...
然后像这样定义您的 collectionView:
let theCollectionView: UICollectionView = {
let v = UICollectionView(frame: CGRect.zero, collectionViewLayout:columnLayout)
我正在努力更改 CollectionView 中项目的大小。
自定义流程布局 class 找到 here:
这是我的收藏视图:
class ExampleViewController: UIViewController, UICollectionViewDataSource {
let theCollectionView: UICollectionView = {
let v = UICollectionView(frame: CGRect.zero, collectionViewLayout: UICollectionViewFlowLayout())
v.translatesAutoresizingMaskIntoConstraints = false
v.backgroundColor = .white
v.contentInsetAdjustmentBehavior = .always
v.layer.cornerRadius = 30
return v
}()
let columnLayout = FlowLayout(
itemSize: CGSize(width: 50, height: 50),
minimumInteritemSpacing: 10,
minimumLineSpacing: 10,
sectionInset: UIEdgeInsets(top: 20, left: 20, bottom: 10, right: 20)
)
我尝试更改 itemSize 但那没有任何作用。
这是 CollectionViewCell 大小更改的代码
(注意:- 根据您的要求更改值!)
let layout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
layout.sectionInset = UIEdgeInsets(top: 20, left: 0, bottom: 10, right: 0)
layout.itemSize = CGSize(width: screenWidth/4, height: screenWidth/4)
layout.minimumInteritemSpacing = 0
layout.minimumLineSpacing = 0
cell2.collectionView2.collectionViewLayout = layout
您没有将 flowLayout
分配给 collectionView
或者尝试:
theCollectionView.collectionViewLayout = columnLayout
或
首先定义你的布局:
let columnLayout = FlowLayout( ...
然后像这样定义您的 collectionView:
let theCollectionView: UICollectionView = {
let v = UICollectionView(frame: CGRect.zero, collectionViewLayout:columnLayout)