我有一个tableView,它在按下单元格后启动一个URL。我正在为它创建webView:
var webView = UIWebView(frame: self.view.bounds)
webView.scalesPageToFit = true
view.addSubview(webView)
let request = URLRequest(url: catPictureURL!)
webView.loadRequest(request)
webViewDidStartLoad(webView)
我有一个功能可以在其中创建一个关闭按钮:
func webViewDidStartLoad(_ webView: UIWebView){
print("JUHUUU")
var subView = UIView()
subView.frame.size.height = 10
subView.frame.size.width = 10
subView.frame = CGRect(x: 0, y: 50, width: 100 , height: 100)
let button = UIButton(type: .system)
button.frame = CGRect(x: 0, y: 50, width: 100, height: 100)
button.backgroundColor = UIColor.red
button.setTitle("CANCEL", for: [])
button.addTarget(self, action: #selector(webView.removeFromSuperview), for: UIControlEvents.touchUpInside)
self.view.addSubview(button)
webView.addSubview(subView)
//subView.navigationItem.rightBarButtonItem = UIBarButtonItem(barButtonSystemItem: .Done, target: self, action: "dismiss")
}
我试过在button.addTarget中关闭webView并显示上一个屏幕,但是
action: #selector(webView.removeFromSuperview)
正在删除rootView
- 而不是webView
(导致崩溃)。我真的不知道如何让webView
关闭。
PS。我也尝试过#selector("dismiss")
并使用self.dismiss
准备一个函数,但结果是一样的。
答案 0 :(得分:1)
你的行动目标是自我(这是你的vc)。将目标设置为webView