等待10秒后无法返回 - UIWebView loadHTMLString

时间:2013-01-28 22:55:23

标签: ios uiwebview

当我使用以下代码加载UIWebView时:

NSString *helpText = [NSString stringWithFormat:@"Lorem Ipsum"];

[self.helpWebView loadHTMLString:[NSString stringWithFormat:@"<html><head></head><body stlye=\"background-color: transparent;\"><div align='justify' style=\"color: #000000; font-family: Helvetica; font-size: %fem;\">%@</div></body></html>", fontSize, helpText] baseURL:[NSURL URLWithString:@""]];

我收到此错误,但只是第一次在我的应用中加载WebView时:

void SendDelegateMessage(NSInvocation *): delegate (webView:decidePolicyForNavigationAction:request:frame:decisionListener:) failed to return after waiting 10 seconds. main run loop mode: kCFRunLoopDefaultMode

文本将加载,但仅在10秒后。但UI被阻止10秒钟。当我在应用中导航时,其他(“稍后”)UIWebViews将立即加载,并且与此特定UIWebView无关,即如果我到达UIWebView A然后到{ {1}} B,A将在UI阻塞10秒后加载,B将立即加载。如果它以B开始然后转到A,B将在10秒后加载,A将立即加载。因此,只有加载的第一个UIWebView会产生问题。

我真的只加载上面的html。一些douzen字符,没有JScript,没有大表,没有搞笑的html东西。如果我加载一个空白的HTML-String,它甚至会阻止UI并报告错误消息。

我没有设置任何委托内容或类似的东西。我在Interface Builder中创建了UIWebView,通过属性将其连接到标题,我使用UIWebView来获取内容。

重要提示:我目前只能使用模拟器,因此我无法预测这是否只是模拟器问题。如果您知道,请告诉我。目前,我无法在真实设备上进行测试。然而,模拟器不应该因为资源而进入此错误。我有一台当前的MacBook Air,几乎没有安装额外的程序(Mac OS X Lion的“干净安装”)。

另一点:我使用loadHTMLString的唯一原因是我需要对文本进行充分论证。如果这可以任何其他方式工作,也会帮助我。至少从Android开发中,我知道除了UIWebView之外别无他法。

1 个答案:

答案 0 :(得分:5)

我认为问题是从今天的更新(iOS 6.1 SDK)解决的,我也认为它与模拟器有关。我认为它是关于干扰来自skpaymenttransaction和其他UIWebView的传出请求......我不确定任何事情,但是...