swift 如何更改UICollectionView滚动方向?

7rtdyuoh  于 2023-10-15  发布在  Swift
关注(0)|答案(3)|浏览(170)

我已经成功地实现了UICollectionView。是否可以更改scrollDirection
你能演示一下如何编程实现它吗?

l2osamch

l2osamch1#

这就是如何使用UICollectionViewFlowLayout在代码中创建它

  1. let layout = UICollectionViewFlowLayout()
  2. layout.scrollDirection = .vertical
  3. let collectionView = UICollectionView(frame: frame, collectionViewLayout: layout)

或者如果您正在使用现有的集合视图,

  1. if let layout = collectionView.collectionViewLayout as? UICollectionViewFlowLayout {
  2. layout.scrollDirection = .vertical
  3. }
sauutmhj

sauutmhj2#

如果使用UICollectionViewCompositionalLayout
UICollectionViewCompositionalLayoutConfiguration具有scrollDirection属性。更改它将影响整个集合视图。如果需要,您还可以为每个部分设置单独的滚动方向。

  1. let configuration = UICollectionViewCompositionalLayoutConfiguration()
  2. configuration.scrollDirection = .vertical
  3. collectionView.collectionViewLayout = UICollectionViewCompositionalLayout(
  4. sectionProvider: { section, environment in
  5. // Return section
  6. },
  7. configuration: configuration
  8. )
wooyq4lh

wooyq4lh3#

如果你没有使用故事板,一切都是通过编程完成的。所以当我们这样做时:

  1. lazy var snapCollectionView: UICollectionView = {
  2. let layout = UICollectionViewFlowLayout()
  3. let collectionView = UICollectionView(frame: CGRect.zero,
  4. collectionViewLayout: layout)
  5. layout.scrollDirection = .horizontal
  6. collectionView.delegate = self
  7. collectionView.dataSource = self
  8. collectionView.backgroundColor = UIColor(named: "background")
  9. return collectionView
  10. }()

相关问题