我已经在我的WebView中添加了一个返回按钮,但是我很难将其设置为实际返回 -
我有此功能:
func goBack() {
if webView.canGoBack {
webView.goBack()
}
}
,在didSelectRowAt IndexPath
中我有:
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
webView.load(URLRequest(url: self.urls[indexPath.row]))
webView.allowsBackForwardNavigationGestures = true
view = webView
// Title/Back button
self.navigationItem.leftBarButtonItem = UIBarButtonItem(title: "Back", style: UIBarButtonItemStyle.plain, target: self, action: #selector(goBack))
}
但是敲击后按钮无济于事 - 我不确定我缺少哪些步骤来完成这项工作。感谢任何帮助,谢谢!
您将目标设置为webView
,应该是self
。
尝试一下,然后查看:
self.navigationItem.leftBarButtonItem = UIBarButtonItem(title: "Back", style: UIBarButtonItemStyle.plain, target: self, action: #selector(self.goBack))
注意:您已将操作分配给表行中的导航项目 选择(
didSelectRowAt
(,因此您需要先选择任何行 那将起作用。此按钮无法正常工作,如果您直接点击/单击 打开按钮而无需选择任何行。要检查其功能,请将您的代码移至viewDidLoad
我尝试了遵循代码,并且正在工作
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.leftBarButtonItem = UIBarButtonItem(title: "Back", style: UIBarButtonItemStyle.plain, target: self, action: #selector(self.goBack))
}
func goBack() {
print("goBack...")
}