2015-01-03 14 views
21

Ho un'app con UIWebView e ho bisogno di cambiarla in WKWebView. Tutto funziona perfettamente, tranne quando il webView deve essere con contentInset che non sia 0. Il problema è che WKWebView non riceve tocchi al di fuori dei limiti del suo contenuto di scrollViewInset.WKWebView non è selezionabile al di fuori del suo contenutoInset

Ho fatto un semplice esempio app per testarlo:

- (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]; 
} 

Quando ho scorrere l'WebView sopra è superiore inserto, non posso fare clic sul WebView in quella zona.

Ho provato a cercare problemi simili, ma non ho avuto fortuna, qualcun altro ha riscontrato questo problema?

Grazie

+0

Ho trovato questo bug report in webKit - https://bugs.webkit.org/show_bug.cgi?id=134230 se questo è lo stesso problema, non verrà risolto ... – oren

+0

Qualcuno ha un aggiornamento su questo? Sto cercando di implementare una visualizzazione Web con una sovrapposizione che si spegne con la visualizzazione Web. Per vari motivi non riesco a lavorare con la soluzione fornita da smileEvday. Qualsiasi aiuto sarebbe apprezzato. Grazie –

+0

@DanielShteremberg non abbiamo ancora trovato una soluzione. Stiamo ancora utilizzando UIWebView ... – oren

risposta

5

ho lo stesso problema, prima di iOS 8, io uso UIWebView, tutto funziona bene, ma non possono rispondere WKWebview evento click quando il display zona contenuto nella zona contentInset. Finalmente risolvo questo problema aggiungendo un div vuoto nella stringa HTML, all'inizio del corpo.

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

Quindi il WKWebView può ottenere lo stesso effetto come set contentInset, e rispondere al rubinetto utente correttamente!

Problemi correlati