【发布时间】:2018-01-31 22:26:46
【问题描述】:
我在UIScrollView 中有一个UITableView
表格视图如下所示:
private(set) lazy var tableView: UITableView = {
let tableView = UITableView(frame: CGRect.zero, style: .plain)
tableView.separatorStyle = .none
tableView.showsVerticalScrollIndicator = false
tableView.rowHeight = 70
tableView.backgroundColor = .blue
tableView.bounces = false
tableView.alwaysBounceVertical = false
tableView.isScrollEnabled = false
return tableView
}()
如您所见,我已禁用表格视图中的滚动,因为我希望它与 UIScrollView 内的其余视图一起滚动。不过,我想要实现的是在UIScrollView 达到一定偏移量时启用tableView 的滚动,因此我在scrollViewDidScroll 委托方法中有它:
func scrollViewDidScroll(_ scrollView: UIScrollView) {
if scrollView.contentOffset.y >= 160 {
self.view.tableView.isScrollEnabled = true
}
}
上述方法部分有效。刚刚启用滚动的UITableView 不会滚动,除非我将手指从屏幕上移开并再次开始滚动。
任何想法如何获得所需的行为?
【问题讨论】:
标签: ios iphone swift uitableview uiscrollview