我已经在我的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))
}
但是点击后退按钮什么都不做 - 我不确定我缺少哪些步骤来完成这项工作。感谢任何帮助,谢谢!
答案 0 :(得分:0)
您已将目标设为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...")
}