我有一个scrollview,我希望滚动视图只滚动向下,它不应该向任何其他方向滚动。它不是关于水平或垂直,而是我希望滚动视图仅在垂直模式下向下滚动而不向上滚动。
答案 0 :(得分:1)
<强>解决方案强>
子类UIScrollView并覆盖限制水平滚动的方法,仅在方向向下时滚动:
class DownwardsOnlyScrollView: UIScrollView
{
override func setContentOffset(_ contentOffset: CGPoint, animated: Bool) {
// restrict movement to vertical only
let newOffset = CGPoint(x: 0, y: contentOffset.y)
//only scroll if scroll direction is downwards
if newOffset.y > self.contentOffset.y
{
super.setContentOffset(newOffset, animated: animated)
}
}
}