Prefacio
Recientemente, hay muchas interacciones con WebView.
Use WebViewClient
El uso de WebViewClinet hereda principalmente la clase WebViewClient, reescribe el método según sea necesario y configúrelo en WebView.
WebView = (WebView) FindViewByID (R.ID.WebView); No OnloadrSource (View de WebView, URL de cadena) {super.onloadResource (Ver, url);
Método WebViewClient
1. Debe OverrideurLloading (WebView View, String URL)
Nota oficial: otorgue a la aplicación de host la oportunidad de hacerse cargo del control cuando una nueva URL está a punto de cargarse en el WebView actual. URL.
Traducción: cuando una nueva URL es cargar la WebView actual, este método le da a la aplicación la oportunidad de controlar el procesamiento de la URL. Si WebView no tiene SetWebViewClient, la operación predeterminada es que WebView le pedirá a Activity Manager que obtenga la URL de procesamiento del controlador derecho. Si WebView sets setWebViewClient, devuelve True representa la aplicación actual para procesar URL y devuelve False para representar la WebView actual para manejar URL. Si la solicitud HTTP es el método post, no se llamará al método.
Ejemplo de código:
/*** Toda la URL llama al navegador del sistema que comienza con www.example.com para abrir otras URL en la WebView actual. {// Llame al sistema de procesamiento de navegador View.StopLoading ();
2. ShouLeoverrideKeyEvent (WebView View, KeyEvent Event)
Nota oficial: otorgue a la aplicación de host para manejar la clave la clave de la clave, el evento sincronizado. El evento clave.
Traducción: brinde la aplicación actual de la oportunidad de manejar eventos clave de manera asincrónica. Devolviendo True, WebView no manejará el evento clave, devolverá False, WebView procesará el evento clave. El retorno predeterminado es falso.
3. OnPageStarted (WebView View, String URL, Bitmap Favicon) y OnPageFinished (WebView View, String URL)
Nota oficial: notifique a la aplicación de host que una página ha comenzado a cargar. de un marco incrustado cambia, es decir, clima un enlace cuyo objetivo es un iframe.
Traducción: se llama cuando la página comienza a cargarse. Sin embargo, cuando la página está anidada (como un salto de enlace en iframe), no se llamará a este método. (Este es el caso hoy, puede controlar el salto de la URL volviendo a cargar en OnloadResource)
Nota oficial: notifique a la aplicación de host que una página ha terminado de cargar.
Traducción: se llamó al final de la carga de la página.
Ejemplo de código:
// Obtener el tiempo de carga de la página
Private Start Time; , "Pasar tiempo es:" + scendtime, toast.length_short) .show ();}} @Override public void onPageStarted (WebView View, String URL, BitMap Favicon) {startti me = System.CurrentTimemillis ();}
4. OnlinerSource (Vista de WebView, URL de cadena)
Nota oficial: notifique a la aplicación de host que la vista web cargará el recurso especificado por la URL dada.
Traducción: notifique a la aplicación WebView para cargar los recursos de URL especificados, cada recurso (como imágenes, URL anidada, JS, archivos CSS). (Puede manejar la URL anidada de iframe a través de este método)
Ejemplo de código:
@Override public void OnDResource (View WebView, String Url) {if (url.indexof ("http://www.example.com")! = -1 && view! = Null) plading (); .