我设置了内容大小,因此垂直滚动变为激活,但我只希望用户能够向北滚动而不是向南滚动。关于如何实现这一目标的任何想法?
//set high greater than view
myScroll.contentSize = CGSize(width: myView.view.frame.width,height: myView.view.frame.height + 190)
我只希望能够向上滚动并禁用向下滚动的功能,这是滚动视图的默认方向
答案 0 :(得分:2)
您可以将滚动视图的内容偏移设置为底部。即,
myScroll.contentOffset = CGPoint(x: 0,y: 190)
//这里190是表示在contentSize中完成的高度增加的相同值。
答案 1 :(得分:1)
创建layoutSubviews
的子类。覆盖contentOffset.y
以确保class MyScrollView: UIScrollView {
var priorOffset = CGPoint.zero
override func layoutSubviews() {
var offset = contentOffset
if offset.y < priorOffset.y {
let yMax = contentSize.height - bounds.height
if offset.y < yMax {
offset.y = priorOffset.y
contentOffset = offset
}
}
priorOffset = offset
super.layoutSubviews()
}
}
仅增加,除非超出内容范围的末尾,因此滚动视图可以在底部反弹。
$http
结果:
答案 2 :(得分:0)
答案 3 :(得分:0)
您可以设置附加到UIScrollView
的{{1}}的方向。
查看一些具有最新答案的热门问题,例如this one。
或者只是选择pod 'UIPanGestureRecognizerDirection'