Ich versuche, eine Benutzerinteraktion von einer popOver-Ansicht an ViewController zu übergeben, um dann mit WKWebView zu interagieren.Übergabe von Werten an WKWebView Swift
Derzeit ist die popover hat Schaltflächen, wenn Anrufe ausgewählt ViewController().callViewControllerMethod()
diese Methode richtig funktioniert und callViewControllerMethod()
nicht nennen.
Innerhalb von callViewControllerMethod()
ist ein Code zur Auswertung von Javascript auf einem WKWebView. Wenn der Code läuft es trifft den evaluateJavascript
Code und wirft "fatal error: unexpectedly found nil while unwrapping an Optional value"
Aber ich habe keine Ahnung, warum - das Javascript, das innerhalb der evaluateJavascript
Funktion korrekt funktioniert, wenn direkt von ViewController
genannt, aber nur, wenn direkt aufgerufen.
Irgendwelche Ideen jemand?
popover-Code
class BackgroundViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
@IBAction func button1(_ sender: AnyObject!) {
print("button 1 selected")
ViewController().callViewControllerMethod()
}
}
Viewcontroller-Code
class ViewController: UIViewController, WKNavigationDelegate, UISearchBarDelegate {
func callViewControllerMethod() {
print("got to the method")
webView.evaluateJavaScript("document.body.style.background = \"white\";") { (result, error) in
if error != nil {
print(result as Any)
}
else {
print("background code completed")
}
}
}
}
Bitte geben Sie ein Codebeispiel, das genau zeigt, wo das Problem auftritt. – paulvs
"Aber ich habe keine Ahnung warum" - der Compiler hat beim Entpacken eines Optionalen Werts unerwartet null gefunden. Dies ist die beste Antwort, die Sie erhalten, ohne Code aus dem Kontext zur Verfügung stellen:/ – Danoram
Tut mir leid hilft, wenn ich etwas Code hinzufügen;) – kb12abz