停止 ScrollView 超出和低于界限
Stopping ScrollView Going Above & Below The Bounds
我在 ViewController 中创建了一个 UIScrollView,并添加了 UIView 和 UITableView 作为 ViewController 的兄弟。
var pageSize = view.bounds.size
// MiniQuestion: I disabled vertical indicators but it caused a gap for the width
// of the indicator, so I added the gap manually. Is it okay behaviour?
pageSize.width += 5
MyView.backgroundColor = UIColor.redColor()
MyTableView.backgroundColor = UIColor.blueColor()
let pagesViews = [MyView , MyTableView]
let numberOfPages = pagesViews.count
for (pageIndex,page) in pagesViews.enumerate(){
page.frame = CGRect(origin: CGPoint(x:0 , y:CGFloat(pageIndex) * pageSize.height), size: pageSize)
ScrollView.addSubview(page)
}
ScrollView.contentSize = CGSize(width: pageSize.width, height: pageSize.height * CGFloat(numberOfPages))
它运行良好。除了,即使我有 2 个页面并向 ScrollView 添加了约束,它也会在首页上方(当我拉更多时)和 tableview 页面末尾下方(当我推更多时)。但是我想将它滚动到 tableview 的末尾并停留在顶部的边界。
通常他们看起来很好......但是,
如果我超越顶部:
如果我推到底部下方:
如何防止这种行为?
如果您不想让用户将其拉出滚动视图的范围,那么:
ScrollView.bounces = false
我在 ViewController 中创建了一个 UIScrollView,并添加了 UIView 和 UITableView 作为 ViewController 的兄弟。
var pageSize = view.bounds.size
// MiniQuestion: I disabled vertical indicators but it caused a gap for the width
// of the indicator, so I added the gap manually. Is it okay behaviour?
pageSize.width += 5
MyView.backgroundColor = UIColor.redColor()
MyTableView.backgroundColor = UIColor.blueColor()
let pagesViews = [MyView , MyTableView]
let numberOfPages = pagesViews.count
for (pageIndex,page) in pagesViews.enumerate(){
page.frame = CGRect(origin: CGPoint(x:0 , y:CGFloat(pageIndex) * pageSize.height), size: pageSize)
ScrollView.addSubview(page)
}
ScrollView.contentSize = CGSize(width: pageSize.width, height: pageSize.height * CGFloat(numberOfPages))
它运行良好。除了,即使我有 2 个页面并向 ScrollView 添加了约束,它也会在首页上方(当我拉更多时)和 tableview 页面末尾下方(当我推更多时)。但是我想将它滚动到 tableview 的末尾并停留在顶部的边界。
通常他们看起来很好......但是,
如果我超越顶部:
如果我推到底部下方:
如何防止这种行为?
如果您不想让用户将其拉出滚动视图的范围,那么:
ScrollView.bounces = false