1

你们有什么想法每次某个uiwebview一直在页面上时如何调用一个方法,即。所以它不能向上滚动?如果能够以智能的方式刷新页面,这个功能会很棒。

/埃里克

4

2 回答 2

1

你可以使用这样的东西:

在 .h 中,您的代码应类似于:

@interface iSafeViewController : UIViewController <UIWebViewDelegate, UIScrollViewDelegate>

然后在.m

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    //The webview is is scrolling
    float scrollViewHeight = scrollView.frame.size.height;
    float scrollContentSizeHeight = scrollView.contentSize.height;
    float scrollOffset = scrollView.contentOffset.y;

    if (scrollOffset <= 1)
    {
        // then we are at the top

    }
    else if (scrollOffset + scrollViewHeight >= scrollContentSizeHeight - 1)
    {
        // then we are at the end

    }
    else
    {
        //We are somewhere in the middle
    }
}

您需要像这样设置 webView 的 scrollView 委托:

[webView.scrollView setDelegate:self];

如果这不起作用,请告诉我。

于 2013-02-12T15:46:26.353 回答
0

UIWebView有财产scrollView。这是UIScrollView为委托设置您想要的任何对象:

@property(nonatomic, assign) id<UIScrollViewDelegate> delegate

现在您将获得所有委托回调:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
- (void)scrollViewDidScrollToTop:(UIScrollView *)scrollView
于 2013-02-12T15:46:50.693 回答