Wie nennen webviewdidfinishload delegate-Methode der web-Ansicht im Kakao?
Ich bin mit dem WebViewDidFinishLoad delegate-Methode WebView, aber es ist nicht immer genannt. Immer wenn ich die Anwendung ausführen und laden Sie Anfrage in einer WebView.
Bitte sagen Sie mir, wie Sie die Methode aufrufen, und die Delegierten, die ich brauche, um eine Verbindung mit der Datei-Besitzer.
Jede Hilfe wird geschätzt.
Vielen Dank im Voraus.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sie sagte in einem Kommentar auf eine andere Antwort:
Das ist, weil es gibt keine solche Methode.
WebView und UIWebView sind nicht das gleiche. Die erstere ist in die WebKit-framework auf dem Mac; der letztere ist in der UIKit-framework für iOS. WebView ist nicht verfügbar auf iOS-und UIWebView ist auf dem Mac nicht verfügbar.
UIWebView ist eine sehr abgespeckte version von WebView. Insbesondere UIWebView hat nur ein delegate-Protokoll, dessen
webViewDidFinishLoad:
ist eine seiner Methoden, in der Erwägung, dass WebView hat nicht weniger als sechs delegate-Protokolle.webViewDidFinishLoad:
existiert nur in der UIWebViewDelegate Protokoll, in dem UIKit-framework für iOS-apps. Umsetzung in eine Mac-Anwendung wird nichts erreichen, weil nichts nennen.Dass tut Euch nicht gut, weil der springende Punkt bei der Implementierung ist es herauszufinden, wenn eine Ladung fertig ist. Für Sie es nennen, sich selbst, würden Sie brauchen, um wissen wenn es nennen—also, wenn eine Ladung fertig ist. Zu wissen, dass, würden Sie brauchen, um erzählt werden, dass ein laden beendet wurde, durch WebKit. Dies ist, wie Sie sagen, in der Logik, wirft die Frage auf,.
Die richtige Lösung ist, um die richtige delegieren, um ein Objekt entspricht, ist die richtige delegieren-Protokoll und setzt die richtige Methode. Das richtige delegieren ist die WebView frame laden delegieren. Entsprechend, das richtige Protokoll ist die WebViewFrameLoadDelegate Protokoll. Die richtige Methode in das Protokoll, dass die frame-Last-Delegaten implementieren muss, ist die
webView:didFinishLoadForFrame:
Methode.Cocoa Touch Programmierer, die mit dem gleichen problem (
webViewDidFinishLoad:
nicht immer genannt) sollten sicherstellen, dass Ihre UIWebView ist delegieren das richtige Objekt. Wenn Sie die Einstellung im code, stellen Sie sicher, dass Sie sprechen, um die richtige web-Ansicht—D. H., dass Ihre Steckdose auf der web-Ansicht verbunden ist, (wenn es in eine Feder oder storyboard), dass man den laden der nib-oder storyboard (wenn es einen gibt), und, dass Sie nicht zu Stress für den Wert der Steckdose mit einem anderen web-Ansicht (eine von der Spitze, dann erstellt man im code oder Umgekehrt).Versucht zu ergänzen (Und ersetzen Sie die
myUIWebView
mit Ihrem UIWebView-outlet-name):Und in der header-Datei hinzufügen
<UIWebViewDelegate>
, so können Sie diese Methoden:[mywebview setDelegate:self];
und ersetzen Sie diemywebview
mit Ihrem UIWebView Namen.setDelegate:
.Erste Gebundene ResourceDelegate der webview mit dem Datei-Eigentümer
Das funktioniert für mich perfekt.