首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iOS UIWebView泄密

iOS UIWebView泄密
EN

Stack Overflow用户
提问于 2015-09-21 06:09:54
回答 1查看 2.9K关注 0票数 3
代码语言:javascript
复制
class MyViewController: UIViewController {
     @IBOutlet weak var webView: UIWebView?
     override func viewDidLoad() {
    super.viewDidLoad()

    let url = NSURL(string: urlString)
    let request = NSURLRequest(URL: url!)
    SVProgressHUD.show()

    webView?.loadRequest(request)
    webView?.scrollView.header = MJRefreshNormalHeader(refreshingBlock: {

      [weak self] in
      if let strongSelf = self {
        strongSelf.webView?.reload()
      }})   }
     override func viewDidDisappear(animated: Bool) {
    super.viewDidDisappear(animated) 

    SVProgressHUD.dismiss()   }    }

extension MyViewController: UIWebViewDelegate {
     func webViewDidFinishLoad(webView: UIWebView) {
    webView.scrollView.header.endRefreshing()
    SVProgressHUD.dismiss()   }       func webView(webView: UIWebView, didFailLoadWithError error: NSError?) {
    webView.scrollView.header.endRefreshing()
    SVProgressHUD.dismiss()   }    }

视图控制器是由一个导航控制器推送的,当我弹出它时,我发现了漏洞。我在instrument.Leak上看到了这些。

代码语言:javascript
复制
Leaked Object   #   Address Size    Responsible Library Responsible Frame NSMutableArray    1   0x137a6ddb0 48 Bytes    UIKit   -[_UIKeyboardTextSelectionGestureController init]
_UIKeyboardTextSelectionController  1   0x137a6e800 96 Bytes    UIKit   -[UIWebSelectionAssistant addNonEditableForceTextSelectionGestureRecognizersToView:]
_UIKeyboardBasedNonEditableTextSelectionGestureController   1   0x137a6dcd0 160 Bytes   UIKit   -[UIWebSelectionAssistant addNonEditableForceTextSelectionGestureRecognizersToView:]

我肯定webView,myViewController被推迟了,但是当弹出myViewController时,4M增加了,而没有发布。请帮忙,谢谢。

列表项目

EN

回答 1

Stack Overflow用户

发布于 2016-02-10 15:52:56

根据在这里贴出的答案的说法,如果您将configuration.selectionGranularity设置为WKSelectionGranularityCharacter,那么泄漏就会停止:

代码语言:javascript
复制
let config = WKWebViewConfiguration()
config.selectionGranularity = .character //WKSelectionGranularityCharacter
let myWebview = WKWebview(frame: frame, configuration: config)

这对我来说是可行的,但是当选择文本时,在webview中没有选择矩形。在您的情况下,这可能是一个可行的解决方法,也可能不是一个可行的解决方案。

编辑我刚刚注意到你的问题是给UIWebView而不是WKWebView。看起来您无法在UIWebView上设置这个选项。我现在要留下这个答案,因为搜索这个内存泄漏的WKWebView人员可能会找到这个线程.

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32688401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档