从View Controller中删除WebView

时间:2017-11-28 12:52:29

标签: ios swift webview uiwebview

我有一个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准备一个函数,但结果是一样的。

1 个答案:

答案 0 :(得分:1)

你的行动目标是自我(这是你的vc)。将目标设置为webView