WebKit在iOS 8上抛出异常以调用setBeingRemoved:

And*_*jão 7 webkit uiwebview ios ios8

我有一个应用程序依赖于UIWebViews的一些屏幕,但从iOS 8开始,我开始看到偶尔抛出以下异常:

WebKit在webView中丢弃了一个未捕获的异常:willRemoveScrollingLayer:withContentsLayer:forNode:delegate:<NSInvalidArgumentException> - [WebActionDisablingCALayerDelegate setBeingRemoved:]:发送到实例的无法识别的选择器(...)

这通常是在点击webview上的按钮或链接时发生的(没有在Objective-C端进行任何其他操作),之后webview中的大多数功能都将被破坏(链接不可点击等).

我至少看到过一个涉及此错误消息的问题,但还没有确凿的答案.

有没有人遇到过这个问题并弄清楚出了什么问题/是什么原因造成的?它似乎完全依赖于HTML内容,这意味着抛出此异常的事实是iOS 8错误.

And*_*jão 3

事实证明,此错误是由于在我的 HTML 中的 iframe 上使用以下 CSS 属性引起的:

-webkit-overflow-scrolling: touch;
Run Code Online (Sandbox Code Playgroud)

删除它(我们现在正在寻找合适的替代方案)并且 UIWebView 不再崩溃。