2010-10-25 47 views
3

的底部,所以,我有一個內部服務建立一個本地的HTML文件(文檔預覽)一個UIWebView一個UIView。我也有「接受」&「拒絕」UIButtons。我需要這些按鈕纔會在用戶滾動到網頁底部後才顯示。有沒有辦法捕獲一個滾動到UIWebView底部的事件?iPhone - UIWebView的:檢測用戶滾動頁

我還沒有看到任何好的答案,任何人都可以幫忙嗎?

在此先感謝。

回答

0

呵呵?

爲什麼不在頁面底部包含按鈕?

+0

按鈕不在HTML中,它們位於也具有UIWebView的UIView中。 – JWD 2010-10-25 19:21:15

+1

啊,在這種情況下。您可以在單獨的viewController中將HTML呈現爲模式視圖,並使用HTML和底部的按鈕。 – Jordan 2010-10-25 19:27:34

5

UIWebView符合UIScrollViewDelegate。因此,您可以創建UIWebView的子類(比如ScrollDetectWebView)並捕獲對UIScrollViewDelegate的調用。

- (void)scrollViewDidScroll:(UIScrollView *)scrollView 
{ 
    [super scrollViewDidScroll: scrollView]; 

    // Whatever scroll detection you need to do 
} 
0

JavaScript允許處理滾動事件並將消息發送到Objective-c。

0
- (void)viewDidLoad { 
    [super viewDidLoad]; 

    self.webView.scrollView.delegate = self; 
} 

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView { 

    CGSize fittingSize = [self.webView sizeThatFits:CGSizeZero]; 

    CGFloat height1 = scrollView.bounds.origin.y + self.webView.bounds.size.height; 

    CGFloat height2 = fittingSize.height; 

    int delta = fabs(height1 - height2); 

    if (delta < 30) { 

     NSLog(@"HELLO!!! You reached the page end!"); 
    } 
    }