我有一个用户可以编辑的 UIWebview(iOS 6 及更高版本)。webView有userInteractionEnabled YES,HTML有contenteditable TRUE,如下:
- (void)configureView // called from viewDidLoad and setDetailItem:
{
NSString *htmlString = @""
"<html>"
"<body>"
"<div contenteditable=\"true\">"
"1: Click on this line (keyboard appears)<p>"
"<textarea>2: Clicking in this textarea causes crash</textarea><p>"
"</div>"
"</body>"
"</html>";
[myWebView loadHTMLString:htmlString baseURL:nil];
myWebView.userInteractionEnabled = YES;
}
单击文本行会弹出键盘。然后,单击文本区域会导致 Apple 代码中的某处崩溃:
-[UITextInteractionAssistant(UITextInteractionAssistant_Internal) oneFingerTap:] + 2204
和这个控制台输出(由 NSZombieEnabled 提供):
*** -[UITextSelection caretRect]:消息发送到已释放实例 0x746ae90
我究竟做错了什么?
(其他信息:我正在使用故事板和 ARC 将 UIWebView 加载到一个全新的通用项目中。崩溃发生在 iPhone/iPad 模拟器和我的 iPhone 3GS 6.1.3 上。)