我有一个 UITableView
我想set bouncing only one side top side.
但我无法解决这个问题。请参阅此视频链接并为我提供解决方案。任何建议都表示赞赏和接受。
这里
https://www.dropbox.com/s/qztsfkqoxuy4aaj/question.mov?dl=0
这是我的表格 View 信息。
最佳答案
使用方法scrollViewDidScroll
检查 tableview 的 ScrollView 的内容偏移量。检查用户是否试图滚动到表格 View 的底部边界之外。如果是这样,滚动回tableview 的末尾。这不会限制底部反弹,但会很快向后滚动,以至于用户不会注意到底部反弹。
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
if (scrollView.contentOffset.y >= scrollView.contentSize.height - scrollView.frame.size.height) {
[scrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, scrollView.contentSize.height - scrollView.frame.size.height)];
}
}
///UPDATE-- 如果 Tableview 的内容大小小于它的框架,上面的代码可能不起作用。
在这种情况下,您可以使用以下内容:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
if(scrollView.contentSize.height > scrollView.frame.size.height)
{
if (scrollView.contentOffset.y >= scrollView.contentSize.height - scrollView.frame.size.height) {
[scrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, scrollView.contentSize.height - scrollView.frame.size.height)];
}
}
else if (scrollView.contentOffset.y >= 0)
{
[scrollView setContentOffset:CGPointMake(scrollView.contentOffset.x, 0)];
}
}
关于ios - Tableview 仅在一侧弹跳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41376865/