如何使用 IGListKit 滚动到部分的底部
Posted
技术标签:
【中文标题】如何使用 IGListKit 滚动到部分的底部【英文标题】:How to scroll to the bottom of a section with IGListKit 【发布时间】:2017-11-07 15:59:12 【问题描述】:我正在尝试滚动到使用 IGListKit 实现的 UICollectionView 的底部。我这样做的方法:
func scrollToBottom(animated: Bool = true)
if let last = self.adapter.objects().last
self.adapter.scroll(
to: last,
supplementaryKinds: nil,
scrollDirection: UICollectionViewScrollDirection.vertical,
scrollPosition: UICollectionViewScrollPosition.bottom,
animated: animated)
这确实滚动到最后一个项目,但是,它没有滚动到最后一个对象的底部。
实际结果:
想要的结果:
任何建议如何获得我想要的结果?
【问题讨论】:
【参考方案1】:或者,您可以使用 UICollectionViewScrollPosition.top 代替 UICollectionViewScrollPosition.bottom 并滚动到底部正常工作。并更新到 Swift 4.x
self.adapter.scroll(
to: self.<#arrayOfObjects#>.last,
supplementaryKinds: nil,
scrollDirection: .vertical,
scrollPosition: .top
animated: true)
【讨论】:
【参考方案2】:使用底层的 UICollectionView 和setContentOffset
方法解决了
func scrollToBottom(animated: Bool = true)
let bottomOffset = CGPoint(
x: 0,
y: self.collectionView.contentSize.height
- self.collectionView.bounds.size.height
+ self.collectionView.contentInset.bottom)
self.collectionView.setContentOffset(bottomOffset, animated: animated)
【讨论】:
以上是关于如何使用 IGListKit 滚动到部分的底部的主要内容,如果未能解决你的问题,请参考以下文章