8

UIViewController我的故事板上有一个“产品详细信息” ,UIWebView可以显示“富文本”(基本上是粗体和斜体)。使用字符串(从 获取CoreData)加载 Web 视图loadHTMLString。问题是第一次显示视图时,在呈现 Web 视图之前至少有一秒钟的延迟。加载的其他“产品详细信息”视图都可以正常加载。它只是第一个需要时间加载的“产品详细信息”Web 视图。

这就是我尝试过的(没有喜悦)

  1. 在第一个屏幕上显示UIWebView带有文本的文本(预热 UIWebView)
  2. 当需要显示详细信息视图时,initprepare for segue方法中的 web 视图将其传递给“产品详细信息”视图控制器。
  3. 我尝试了在故事板中/不在故事板中/在滚动视图中等的各种组合

如果其他人遇到这个问题以及他们如何克服它/解决它,我会非常感兴趣。我觉得很奇怪,我在 SO 上找不到很多类似的问题;我一定是在做傻事……


请注意,我使用的是 UIWebView,因此可以显示富文本。我知道我可以使用其他控件显示富文本,但是制作我想要显示的文本的程序只能使用 HTML 导出富文本。

4

3 回答 3

6

这是一个常见的问题UIWebView。我的解决方法是先隐藏 Web 视图(改为显示某种“正在加载...”指示器),然后在webViewDidFinishLoad:方法中使其不隐藏。

于 2013-04-15T17:14:40.013 回答
3

除了使用 UIWebView 来显示富文本内容,您可以尝试使用 OHAttributedLabel 的OHASBasicHTMLParser,它向后兼容 iOS 6 之前的版本。

您可以在此处找到其标记解析器的示例。

于 2013-04-13T20:26:45.403 回答
0

这应该对加载有很大帮助:

    var data: Data? = htmlString.data(using: .utf8)

    if let aData = data {

        webView.load(aData, mimeType: "text/html", textEncodingName: "UTF-8", baseURL: NSURL() as URL)
    }

信用:http: //iphonedevsdk.com/forum/iphone-sdk-development/23481-why-the-load-delay-with-a-uiwebview-and-local-text.html

于 2018-03-07T09:40:14.357 回答