2012-01-03 13 views
5

¿Hay alguna manera de ocultar o deshabilitar el campo URL en la barra de direcciones? En mi caso, el dispositivo es una tableta que se ejecuta como un navegador de kiosco, por lo que solo se permite una URL.Phonegap ChildBrowser plugin: Deshabilitar/Ocultar URL en la barra de direcciones, pero NO atrás/reenviar/salir botones

i fijo esto cambiando el código en el ChildBrowser.java a

private void navigate(String url) { 
    InputMethodManager imm = (InputMethodManager)this.ctx.getSystemService(Context.INPUT_METHOD_SERVICE); 
    imm.hideSoftInputFromWindow(edittext.getWindowToken(), 0); 
    if (!url.startsWith("http")) { 
     this.webview.loadUrl("http://" + url); 
    } 
    this.webview.loadUrl("http://www.my-only-allowed-site.example.org"); 
    this.webview.requestFocus(); 
} 

Esto funciona bien, pero no es agradable. Aún puedes ver la URL. Me gustaría tener alguna de estas posibles soluciones:
1) ocultar completamente el campo URL
2) ocultar la softkeyboard al hacer clic en el campo URL
3) establecer el color de las fuentes de URL a negro

Cualquier ¿idea?
gracias de antemano

Respuesta

0

No sé nada sobre Phonegap pero supongo que estás usando un estándar Android WebView?

Si ve una barra de URL, generalmente significa que se está invocando el explorador de sistema predeterminado para manejar la carga de la página. Para evitar este conjunto un WebViewClient de la siguiente manera ...

this.webview.setWebViewClient(new WebViewClient() { 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     return false; 
    } 
}); 

El método shouldOverrideUrlLoading(...) es llamado por el programa de control para ver si se debe anular la carga mediante el Administrador de Actividad para encontrar una aplicación adecuada (por lo general la aplicación de navegador) Devolver false significa que la instancia WebView desea gestionar su propia carga de URL y no verá ninguna barra de URL en absoluto.

EDITAR: Si eso lo soluciona pero también pierde los botones de navegación, le sugiero que mantenga su propia colección de historial y proporcione sus propios botones para retroceder/avanzar/salir.

+0

gracias por la pista. Acabo de eliminar la línea 'toolbar.addView (edittext); 'del Childbrowser.java y funcionó. – user1127000

4

Si modifica el código fuente del plugin, puede ocultar el campo URL y botón de cierre mediante la modificación del código fuente para el plugin y basta con comentar la siguiente línea:

toolbar.addView(back);  //shows the back button 
toolbar.addView(forward); //shows the forward button 
//toolbar.addView(edittext); //shows the URL - comment this line out to hide the URL 
toolbar.addView(close);  //shows the close button 

Editar: ¡Uy, acabo de ver en tu comentario que lo descubriste de la misma manera!

+0

Cualquier idea para la plataforma ios que se va a modificar en el complemento – GSB

Cuestiones relacionadas