如何防止 UITableView 仅向下滚动?我尝试使用启用滚动的属性,但它冻结了双方的滚动。提前致谢。
问问题
1354 次
4 回答
3
你应该func scrollViewDidScroll(scrollView: UIScrollView)
在你的UITableViewDelegate
.
func scrollViewDidScroll(scrollView: UIScrollView) {
if scrollView.contentOffset.y > 0 {
// you scrolled down
scrollView.contentOffset.y = 0
}
}
于 2016-04-21T13:46:25.220 回答
2
添加tableView.alwaysBounceVertical = false
你的viewDidLoad()
方法。
这将帮助您实现您所需要的。
于 2016-04-27T06:45:54.407 回答
0
将您设置view-controller
为您UITableView
的代表
self.myTableView.delegate = self;
并将以下方法添加到您的视图控制器中,
-(void)scrollViewDidScroll:(UIScrollView *)scrollView {
CGPoint translation = [scrollView.panGestureRecognizer translationInView:scrollView.superview];
if(translation.y > 0){
[scrollView setScrollEnabled:NO];
} else {
[scrollView setScrollEnabled:YES];
}
}
我还没有测试过,但我想它会工作。
编辑:对不起,我上次没有看到标签。这是斯威夫特版本:
func scrollViewDidScroll(scrollView: UIScrollView) {
var translation: CGPoint = scrollView.panGestureRecognizer.translationInView(scrollView.superview)
if translation.y > 0 {
scrollView.scrollEnabled = false
} else {
scrollView.scrollEnabled = true
}
}
于 2016-04-21T13:49:20.607 回答
-1
- (void)viewDidLoad {
myTableView.scrollView.delegate = self;
}
-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
if (scrollView.contentOffset.y > 0 && scrollViewmyTableView.scrollView)
{
[scrollView setScrollEnabled:NO];
[scrollView setContentOffset:CGPointMake(0, 0)];
}
[scrollView setScrollEnabled:YES];
}
于 2016-04-21T16:11:18.887 回答