Ich glaube nicht, dass es viele Fälle gibt, aber es ist ein Memorandum, wenn Sie mit WebView von Android auf den Ankerlink (Link auf der Seite) auf dem Webbildschirm tippen und zu diesem Zeitpunkt etwas auf der Anwendungsseite funktionieren lassen möchten.
** Beispiel: Wenn Sie WebView in ScrollView einbinden, funktioniert der Ankerlink nicht. Daher möchte ich den Tipp des Ankerlinks auf der Anwendungsseite einbinden, um durch ScrollView zu scrollen. **
Wenn Sie die WebView und die native Ansicht zusammen scrollen möchten, können Sie Folgendes implementieren
Was soll ich zuerst tun, wenn ich die URL mit shouldOverrideUrlLoading von WebViewClient sehe und es sich um einen In-Page-Link handelt? Ich habe nachgedacht, aber sollteOverrideUrlLoading wird nicht für Links innerhalb derselben Seite aufgerufen ...
ShouldOverrideUrlLoading wird beim Tippen auf einen In-Page-Link nicht aufgerufen, onPageFinished jedoch. Sie können auch Url als Argument nehmen. Was soll ich hier tun? Angenommen, der In-Page-Link sieht folgendermaßen aus:
<a href="#top">Zurück nach oben</a>
Es ist in Ordnung, wenn Sie mit WebViewClient wie folgt schreiben
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
if(url.contains("#top")) {
/**Schreiben Sie hier, was Sie tun möchten**/
}
}
});
das ist alles.
Recommended Posts