我已经成功地实现了UICollectionView。是否可以更改scrollDirection?你能演示一下如何编程实现它吗?
UICollectionView
scrollDirection
l2osamch1#
这就是如何使用UICollectionViewFlowLayout在代码中创建它
UICollectionViewFlowLayout
let layout = UICollectionViewFlowLayout()layout.scrollDirection = .verticallet collectionView = UICollectionView(frame: frame, collectionViewLayout: layout)
let layout = UICollectionViewFlowLayout()
layout.scrollDirection = .vertical
let collectionView = UICollectionView(frame: frame, collectionViewLayout: layout)
或者如果您正在使用现有的集合视图,
if let layout = collectionView.collectionViewLayout as? UICollectionViewFlowLayout { layout.scrollDirection = .vertical}
if let layout = collectionView.collectionViewLayout as? UICollectionViewFlowLayout {
}
sauutmhj2#
如果使用UICollectionViewCompositionalLayoutUICollectionViewCompositionalLayoutConfiguration具有scrollDirection属性。更改它将影响整个集合视图。如果需要,您还可以为每个部分设置单独的滚动方向。
let configuration = UICollectionViewCompositionalLayoutConfiguration()configuration.scrollDirection = .verticalcollectionView.collectionViewLayout = UICollectionViewCompositionalLayout( sectionProvider: { section, environment in // Return section }, configuration: configuration)
let configuration = UICollectionViewCompositionalLayoutConfiguration()
configuration.scrollDirection = .vertical
collectionView.collectionViewLayout = UICollectionViewCompositionalLayout(
sectionProvider: { section, environment in
// Return section
},
configuration: configuration
)
wooyq4lh3#
如果你没有使用故事板,一切都是通过编程完成的。所以当我们这样做时:
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 }()
lazy var snapCollectionView: UICollectionView = {
let collectionView = UICollectionView(frame: CGRect.zero,
collectionViewLayout: layout)
layout.scrollDirection = .horizontal
collectionView.delegate = self
collectionView.dataSource = self
collectionView.backgroundColor = UIColor(named: "background")
return collectionView
}()
3条答案
按热度按时间l2osamch1#
这就是如何使用
UICollectionViewFlowLayout
在代码中创建它或者如果您正在使用现有的集合视图,
sauutmhj2#
如果使用UICollectionViewCompositionalLayout
UICollectionViewCompositionalLayoutConfiguration具有scrollDirection属性。更改它将影响整个集合视图。如果需要,您还可以为每个部分设置单独的滚动方向。
wooyq4lh3#
如果你没有使用故事板,一切都是通过编程完成的。所以当我们这样做时: