How to Stop UIWebView from “bouncing” vertically s

2019-09-07 11:06发布

问题:

My question is the same as this question, but has one difference. When I scroll to top refresh my website, I want stop bouncing only to the end of the bottom scroll. How do I do this?

回答1:

You can try like this :

override func viewDidLoad() {
    super.viewDidLoad()

    webview.scrollView.delegate = self

}

func scrollViewDidScroll(scrollView: UIScrollView) {

    if (scrollView.contentOffset.y >= scrollView.contentSize.height - scrollView.frame.size.height) {
        scrollView.setContentOffset(CGPointMake(scrollView.contentOffset.x, scrollView.contentSize.height - scrollView.frame.size.height), animated: false)
    }   
}

Set the delegate of your webview and set the content offset of the webview's scrollview

Ref taken from: https://stackoverflow.com/a/14084747/4557505



回答2:

Personally in Xcode 7.3 in Swift, I Simply add this in the viewDidLoad Function:

UIWebview.scrollView.bounces = false;


回答3:

I think you can also set the scrollview's bounces

like this,It's simple

-(void)scrollViewDidScroll:(UIScrollView *)scrollView{
    if (scrollView.contentOffset.y > 0) {
        scrollView.bounces = NO;
    }else{
        scrollView.bounces = YES;
    }
}