Ich habe eine UIViewController wie folgt aus:ein Ziel an einen Selektor zu einem anderen Objekt gehört, Hinzufügen von
import UIKit
import WebKit
class ViewController: UIViewController {
var webView: WKWebView?
var backButton: UIButton?
override func loadView() {
self.webView = WKWebView()
self.backButton = UIButton(type: .system)
self.backButton?.addTarget(self.webView, action: #selector(goBack), for: .touchUpInside)
}
}
Dieser Code versucht Abgreifen der Zurück-Taste, um die WKWebView
‚s goBack()
Instanzmethode zu verbinden. Beachten Sie, dass ich self.webView
an den addTarget()
Anruf der Schaltfläche übergeben habe.
Dies führt zu einem Kompilierungsfehler: "Use of unresolved identifier 'goBack'"
. Ich dachte, der Swift-Compiler könnte goBack()
in die WKWebKit
Instanz auflösen.
Die einzige Art, wie ich das bekommen kann, ist zu kompilieren in self
und leitet den goBack()
Anruf manuell weitergeben müssen:
override func loadView() {
self.webView = WKWebView()
self.backButton = UIButton(type: .system)
self.backButton?.addTarget(self, action: #selector(goBack), for: .touchUpInside)
}
und
func goBack() {
self.webView?.goBack()
}
Bin ich hier fehlt etwas offensichtlich?