2015-01-03 36 views
21

我有一個UIWebView的應用程序,我需要將其更改爲WKWebView。 一切工作完美,除非webView需要與contentInset不是0. 問題是,WKWebView沒有接收到它的scrollView的contentInset範圍之外的接觸。WKWebView無法在它的contentInset外部點擊

我做了一個簡單的示例應用程序測試它:

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    WKWebViewConfiguration *config = [[WKWebViewConfiguration alloc] init]; 
    self.wkWebView = [[WKWebView alloc] initWithFrame:self.view.frame configuration:config]; 
    [self.view addSubview:self.wkWebView]; 

    self.wkWebView.scrollView.contentInset = UIEdgeInsetsMake(200, 0, 0, 0); 
    NSURL *url = [NSURL URLWithString:@"http:/www.google.com"]; 
    NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
    [self.wkWebView loadRequest:request]; 
} 

當我滾動webView的上方是頂部插圖,我不能點擊該區域中的web視圖。

我試過尋找類似的問題,但沒有運氣,沒有人遇到過這個問題嗎?

感謝

+0

我發現這個bug報告在webKit - https://bugs.webkit.org/show_bug.cgi?id=134230如果這是相同的問題,它不會被修復... – oren

+0

任何人有這方面的更新?我試圖實現一個Web視圖,其中包含一個可以在Web視圖中滾動的疊加層。由於各種原因,我無法使用smileEvday提供的解決方案。任何幫助,將不勝感激。謝謝 –

+0

@DanielShteremberg我們還沒有找到解決方案。我們仍在使用UIWebView ... – oren

回答

5

我遇到同樣的問題,iOS的8之前,我使用的UIWebView,一切工作正常,但WKWebview不能響應點擊事件時contentInset區域內容區域顯示。 我終於通過在HTML字符串中添加一個空的div來解決這個問題,在開始的時候。

<div style='width:100%;height:500px'></div> 

然後WKWebView可以得到像設置contentInset一樣的效果,並響應用戶點擊正確!