Ich versuchte, Rückruf in scrollViewDidScroll:
Methode zu bekommen, wenn ich HTML-Zeichenfolge in webView
laden, aber der Inhalt scrollt und scrollViewDidScroll
wird nicht aufgerufen. Wenn ich das URLRequest
Objekt in WebView überlasse, funktioniert es gut.scrollViewDidScroll nicht aufgerufen in UIWebView
Eine Sache, was ich aufgefallen ist, dass, wenn ich die dann Scrollinhaltsgröße ist als Scroll-Ansicht Größe der gleichen HTML-String zu laden versucht, und wenn ich versuche, URL zu laden, gibt es Scroll Inhalt Größe von mehr als Scroll Größe und in diesem Fall scrollViewDidScroll:
Anruf bekommen.
Ich habe so viele Dinge ausprobiert. Zuerst setze ich die Rolle View Delegate webView.scrollView.delegate = self
und implementieren scrollViewDidScroll:
Methode, aber es funktioniert nicht, dann habe ich eine Kind-Klasse von WebView, die Scroll View Delegate entsprechen. I außer Kraft setzen scrollViewDidScroll:
als
protocol MyWebViewDelegate: class {
func myWebViewDidScroll(_ scrollView: UIScrollView)
}
class MyWebView: UIWebView {
public weak var scrollViewDelegate: MyWebViewDelegate?
override func scrollViewDidScroll(_ scrollView: UIScrollView) {
super.scrollViewDidScroll(scrollView)
scrollViewDelegate?.myWebViewDidScroll(scrollView)
}
}
Jetzt habe ich MyWebViewDelegate
Protokoll entsprechen und implementieren Methode myWebViewDidScroll:
. Nachdem ich die ganze Arbeit gemacht hatte, bekam ich einen Rückruf in myWebViewDidScroll:
, aber wenn die Scroll-Ansicht prallte.
Vielen Dank. Aber ich habe alle Delegierten gesetzt und 'scrollViewDidScroll' wird aufgerufen, wenn webView zurückgeworfen wird. Und wie ich bereits beschrieben habe, wenn ich 'URLRequest' Objekt lade, funktioniert es mit dem gleichen Code. Ich habe nur Probleme mit dem Laden von HTML-String. –
@ChanchalChauhan - kann diesen Code anzeigen –