我正在为我的项目使用Xcode的主 - 详细信息模板。在详细视图控制器中,我显示了一个webView。当我从详细视图控制器返回到主视图控制器(tableView)时,webView不会释放内存。
因此,当我单击tableView中的多行并转到详细信息时,所有加载的webView都会构建内存并且永远不会释放。我试着用这个:
override func viewDidDisappear(animated: Bool) {
webView.stopLoading()
}
但是这只会停止加载,而之前加载的内容都会保留在内存中。关于如何释放内存的任何建议?
谢谢!
编辑:
我尝试了提出的解决方案here,我唯一能做的就是我的记忆力现在远不超过100 mb。但是我的应用程序从10 mb开始,在显示webView几次之后,它上升到大约100 mb。以下是我根据提议的解决方案所做的改变:
override func viewDidDisappear(animated: Bool) {
let requestURL = NSURL(string: "")
let request = NSURLRequest(URL: requestURL!)
webView.loadRequest(request)
webView.stopLoading()
webView.delegate = nil
}
问题是应用程序的内存仍然比应有的多10倍(从10 mb到100 mb)。我也发现其他人有同样的问题,所以我认为这个问题值得一个好的答案。正如@Dan所说,我们这些新手需要Swift的解决方案。