禁用屏幕顶部的UIScrollView弹跳

时间:2014-03-29 20:07:18

标签: ios iphone ipad

我的应用中有UIScrollView,启用了垂直反弹功能。我需要屏幕底部的弹跳,但屏幕顶部没有启用。

我没有如何使用以下内容检测scrollview:

  (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView {

  // no bounce if scrollView has reached the top of the screen ??
  }

4 个答案:

答案 0 :(得分:27)

在滚动视图滚动时,尝试设置bounces属性,具体取决于内容偏移量:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    scrollView.bounces = (scrollView.contentOffset.y > 100);
}

答案 1 :(得分:2)

<强> SWIFT

func scrollViewDidScroll(_ scrollView: UIScrollView) {
    //disable bounce only at the top of the screen
    scrollView.bounces = scrollView.contentOffset.y > 100
}

答案 2 :(得分:0)

在滚动发生之前满足条件是正确的

override func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
   tableView.bounces = tableView.contentOffset.y > 100
}

答案 3 :(得分:0)

仅用于拉动:

extension YourViewController: UIScrollViewDelegate {
    
    func scrollViewDidScroll(_ scrollView: UIScrollView) {
        scrollView.contentOffset.y = min(-88, scrollView.contentOffset.y) // -88 or other point
    }
}