2013-01-08 1 views
9

La mia app è alimentata a schermo intero UIWebView. Funziona bene, tranne quando la tastiera viene sollevata, la vista viene spostata su circa 10 pixel lasciando uno spazio vuoto (vedi schermata sotto).Lo scorrimento della tastiera fa spostare UIWebView a sinistra

Qualcuno sa che cosa causa questo e se ci sono soluzioni o funzionano?

AGGIORNAMENTO: Per essere più specifici, lo UIWebView non si sta spostando, il contenuto HTML si sta spostando.

enter image description here

+0

Ho anche notato che lo spazio viene visualizzato se DoubleTap lo schermo. – joe

+0

L'UIWebView è spostato o il suo contenuto? Potrebbe essere necessario un codice per come creare UIWebView e aggiungerlo allo schermo? –

+0

appare anche dopo il doppio tocco? allora ha qualcosa a che fare con lo zoom. Anche la tastiera ha questo comportamento: quando ti concentri su un campo di testo, la pagina web viene ingrandita per mostrare la risoluzione appropriata. Cerca un codice per disabilitare lo zoom della pagina web. per esempio. 'scalesPageToFit' –

risposta

8

Si può provare a disabilitare zoom per la visualizzazione web:

webview.scrollView.delegate = self; 

-(UIView*)viewForZoomingInScrollView:(UIScrollView*)scrollView { 
return nil; 
} 
+0

Un sacco di risposte a questa domanda parlano di come resettare i limiti della scrollview dopo che appare la tastiera. È brutto e crea qualche strano rimbalzo in un'app. Questa soluzione è il modo migliore per evitare che la visualizzazione Web si sposti in primo luogo. –