Avant-propos
Récemment, il existe de nombreuses interactions avec WebView.
Utiliser WebViewClient
L'utilisation de WebViewClinet hérite principalement de la classe WebViewClient, réécrivez la méthode au besoin et configurez-la dans WebView.
WebView = (WebView) FindViewByid (R.Id.WebView); WebView.SetwebViewClient (Nouveau ExemplewebViewClient ()); ;} @Override public Boolean ShoulRideRideurlloading (webView View, String URL) {View.Loadurl (URL); OnLoadrSource (webView View, String URL) {super.OnloadResource (View, URL);
Méthode WebViewClient
1. Soupchable de surrideurl (WebView View, URL de chaîne)
Remarque officielle: Donnez à l'application hôte une chance de prendre le contrôle du contrôle lorsqu'une nouvelle URL est sur le point d'être chargée dans le WebView actuel. URL.
Traduction: Lorsqu'une nouvelle URL consiste à charger le WebView actuel, cette méthode donne à l'application l'occasion de contrôler le traitement de l'URL. Si WebView n'a pas SetWebViewClient, l'opération par défaut est que WebView demandera à Activity Manager pour obtenir l'URL de traitement du gestionnaire droit. Si WebView set SetwebViewClient, Retourne True représente l'application actuelle pour traiter l'URL et renvoie False pour représenter le WebView actuel pour gérer l'URL. Si la demande HTTP est la méthode post, la méthode ne sera pas appelée.
Exemple de code:
/ *** Toutes les URL appellent le navigateur système qui commence par www.example.com pour ouvrir d'autres URL sur le WebView actuel. {// appelle le système par défaut de traitement du navigateur.
2. ShouleoverridekeyEvent (WebView View, KeyEvent Event)
Remarque officielle: Donnez à l'application hôte un changement pour gérer la clé La clé, la clé de l'événement ne gérera pas l'événement clé. L'événement clé.
Traduction: Donnez l'application actuelle de la possibilité de gérer les événements clés de manière asynchrone. Renvoyant True, WebView ne gérera pas l'événement clé, Return False, WebView traitera l'événement clé. Le retour par défaut est faux.
3. OnParestarted (vue WebView, URL de chaîne, bitmap favicon) et onPageFinished (vue WebView, URL de chaîne)
Remarque officielle: informer l'application hôte qu'une page a commencé à charger. d'un cadre intégré aux changements, c'est-à-dire un lien dont la cible est un iframe.
Traduction: elle s'appelle lorsque la page commence à se charger. Cependant, lorsque la page est imbriquée (comme un lien saute dans iframe), cette méthode ne sera pas appelée. (C'est le cas aujourd'hui, vous pouvez contrôler le saut d'URL en ré-chargeant onloadResource)
Remarque officielle: informer l'application hôte qu'une page a terminé le chargement.
Traduction: il a été appelé à la fin de la charge de page.
Exemple de code:
// Obtenez le temps de chargement de la page
Private Long Starmtime; , "Le temps de passer est:" + les dépenses, toast.length_short) .show ();}} @Override public void onParestarted (webView View, URL de chaîne, bitmap favicon) {startti me = System.currenttimemillis ();}
4. Onlinersource (vue WebView, URL de chaîne)
Remarque officielle: informer l'application hôte que le WebView chargera la ressource spécifiée par l'URL donnée.
Traduction: informer l'application WebView pour charger les ressources d'URL spécifiées, chaque ressource (telles que les images, les fichiers URL, JS, CSS). (Vous pouvez gérer l'URL imbriquée iframe via cette méthode)
Exemple de code:
@Override public void ondreSource (webView View, String URL) {if (url.indexof ("http://www.example.com")! = -1 && View! = Null) Plade (); .