【发布时间】:2019-04-07 07:49:44
【问题描述】:
当offset 位于 0 时,用户无需向左滑动,因为使用以下代码在该方向上看不到任何东西:-
collectionView.contentOffset.x = max(0,scrollView.contentOffset.x)
但是如果在rightView 上禁用向右滑动呢?
【问题讨论】:
标签: ios uiscrollview uicollectionview swift4 uipagecontrol
当offset 位于 0 时,用户无需向左滑动,因为使用以下代码在该方向上看不到任何东西:-
collectionView.contentOffset.x = max(0,scrollView.contentOffset.x)
但是如果在rightView 上禁用向右滑动呢?
【问题讨论】:
标签: ios uiscrollview uicollectionview swift4 uipagecontrol
你试过了吗?
collectionView.bounces = false
【讨论】:
我不是 100% 我理解你的问题,但这就是你要找的吗?
collectionView.contentOffset.x = max(min(collectionView.contentSize.width - collectionView.bounds.width, collectionView.contentOffset.x), 0)
如果是,还要确保 contentSize 大于 collectionView 的 bounds。
【讨论】:
使用这个实现 uiscrollviewdelegate
override func scrollViewDidScroll(_ scrollView: UIScrollView) {
var bottomEdge:CGFloat = scrollView.contentOffset.x + scrollView.frame.size.width;
if (bottomEdge == scrollView.contentSize.width)
{
// we are at the bottom
self.collectionView.isScrollEnabled = false
self.collectionView.isPagingEnabled = false
} else {
self.collectionView.isScrollEnabled = true
self.collectionView.isPagingEnabled = true
}
}
【讨论】: