【问题标题】:function loadHTMLString from UIWebView costs too much memoryUIWebView 中的函数 loadHTMLString 占用太多内存
【发布时间】:2012-04-29 13:22:21
【问题描述】:

UIWebView 中的函数loadHTMLString 占用过多内存,会激活当前UIViewController 的didReceiveMemoryWarning

请问我该如何解决:D

【问题讨论】:

  • 我也有同样的问题,你解决了吗?谢谢

标签: ios memory uiwebview


【解决方案1】:

如果你只使用 webview 来加载一个 html 页面

我认为你应该优化你的页面来解决它

如果你加载了很多页面,你应该在加载另一个页面或释放之前清理 webview

喜欢这个

[webView loadHTMLString: @"" baseURL: nil];

【讨论】:

  • 出于奇怪的原因,这正是我为避免 uiwebview 内存泄漏而采取的措施...请记住让 webview 有时间加载这个空字符串(以便进行清理)。
【解决方案2】:

如何将您的 HTML 存储在一个文件中,然后:

NSURL *fileURL = [NSURL fileURLWithPath:filePath];
NSURLRequest *request = [NSURLRequest requestWithURL:fileURL];
[webView loadRequest:request];

【讨论】:

  • 谢谢,但是 htmlString 来自网络,将字符串写入文件不是一个好的解决方案
  • 来自网络?为什么不只使用 URLRequest 加载它?
【解决方案3】:

可能是您的 html NSString for loadHTMLString: 太长,我的意思是 loadHTMLString: 的 NSString 的大小太大。如果你的 html 字符串中有一些图像 url,它也可能有问题。

【讨论】:

    猜你喜欢
    • 2012-05-23
    • 1970-01-01
    • 1970-01-01
    • 2015-10-14
    • 2013-07-18
    • 2013-07-11
    • 2020-05-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多