我已成功实施UICollectionView
。是否可以更改scrollDirection
?
请告诉您如何以编程方式实现它?
答案 0 :(得分:73)
这是您使用UICollectionViewFlowLayout
let layout = UICollectionViewFlowLayout()
layout.scrollDirection = .vertical
let collectionView = UICollectionView(frame: frame, collectionViewLayout: layout)
或者如果您正在使用现有的集合视图
if let layout = collectionView.collectionViewLayout as? UICollectionViewFlowLayout {
layout.scrollDirection = .vertical
}
答案 1 :(得分:0)
如果您不使用情节提要,而所有操作均以编程方式完成。 所以当我们这样做时:
lazy var snapCollectionView: UICollectionView = {
let layout = UICollectionViewFlowLayout()
let collectionView = UICollectionView(frame: CGRect.zero,
collectionViewLayout: layout)
layout.scrollDirection = .horizontal
collectionView.delegate = self
collectionView.dataSource = self
collectionView.backgroundColor = UIColor(named: "background")
return collectionView
}()
答案 2 :(得分:0)
如果您使用 UICollectionViewCompositionalLayout
UICollectionViewCompositionalLayoutConfiguration 有一个 scrollDirection 属性。更改它会影响整个集合视图。如果需要,您还可以为每个部分设置单独的滚动方向。
let configuration = UICollectionViewCompositionalLayoutConfiguration()
configuration.scrollDirection = .vertical
collectionView.collectionViewLayout = UICollectionViewCompositionalLayout(
sectionProvider: { section, environment in
// Return section
},
configuration: configuration
)