当我取消添加到popover中的联系人时,UItextView崩溃

时间:2015-07-10 08:42:50

标签: ios objective-c crash uitextview datadetectortypes

我已经在我的UITextView中添加了电话号码。

self.textView.dataDetectorTypes = UIDataDetectorTypeAll;

enter image description here

如果我只是:

  • 选择电话号码
  • 按添加到联系人
  • 创建新联系人
  • 完成

一切都很好。但如果我取消添加并尝试退出此菜单,应用程序将崩溃。

  • 选择电话号码
  • 按添加到联系人
  • 按下Popover(自动后退)
  • 再次按弹出窗口(崩溃)

所以...如果我取消标准控件中的联系人添加应用程序崩溃。并且它在私有方法中崩溃( - [UITextView _finishHandlingInteraction:] UITextView_LinkInteraction.m:335)。

我试图找到有关这些方法的一些信息,或者有关同一崩溃的一些信息。但它没有帮助=(

iOS 8.4

崩溃日志:

  

断言失败 - [MYCustomTextView _finishHandlingInteraction:],/ SourceCache / UIKit / UIKit-3347.44 / UITextView_LinkInteraction.m:335

     

*由于未捕获的异常终止应用程序' NSInternalInconsistencyException',原因:''   * 第一次抛出调用堆栈:   (0x2ad85fef 0x39171c8b 0x2ad85ec5 0x2ba84f17 0x2eab9a4b 0x2e76f2b7 0x2e76f793 0x2e76f735 0x2e76f52d 0x2eac4115 0x2e55806b 0x2e4070f9 0x2e820f9b 0x2e3d0181 0x2e3ce05f 0x2e4054d9 0x2e404ddd 0x2e3dafe5 0x198f2f 0x2e6518fb 0x2e3d99f9 0x2ad4bfaf 0x2ad4b3bf 0x2ad49a25 0x2ac96201 0x2ac96013 0x32472201 0x2e43aa59 0x1afa6b 0x396fdaaf)   libc ++ abi.dylib:以NSException类型的未捕获异常终止

对于iOS 9(13A4293g)betta:

  

***断言失败 - [MYCustomTextView _finishHandlingInteraction:],/ BuildRoot / Library / People / com.apple.xbs / Source / UIKit / UIKit-3486.4 / UITextView_LinkInteraction.m:342

     

*由于未捕获的异常终止应用程序' NSInternalInconsistencyException',原因:''   * 第一次抛出调用堆栈:   (0x24d69153 0x3659ee0f 0x24d69029 0x25b4862d 0x297c1867 0x297c2397 0x29362041 0x2936267b 0x293625e3 0x29362315 0x297cf597 0x29408299 0x29454123 0x290dff13 0x28f77189 0x294538f3 0x28f39ecb 0x28f37ab1 0x28f75201 0x28f7494b 0x28f469b5 0x1679e3 0x28f4533d 0x24d2c81b 0x24d2c409 0x24d2a74b 0x24c7d229 0x24c7d015 0x2dd25bb9 0x28faca7d 0x17e523 0x36d07873)   libc ++ abi.dylib:以NSException类型的未捕获异常终止

  • 试验:
    • iOS 7.1(iPad模拟器)_不要崩溃
    • iOS 8.4(iPad模拟器)_崩溃
    • iOS 8.3(iPad 4)_崩溃
    • iOS 8.3(iPad mini)_崩溃
    • iOS 8.4(iPad mini 3)_崩溃
    • iOS 9 betta(iPad mini)_崩溃

2 个答案:

答案 0 :(得分:2)

iOS核心是一个问题。我曾写信给苹果支持。他们建议我在iOS 9 beta 4上测试它。现在它不会崩溃。但是发布了很多奇怪的消息给日志。现在任何方式它都不是讨论的主题。它适用于Apple的工作人员。那就是为什么。

答案 1 :(得分:0)

似乎添加到联系人调用的视图仍在编辑中,如果您在此期间结束,则会崩溃。您应该尝试强制创建新联系人视图结束,以便存储文本。也许尝试这样的事情:

- (void) viewWillDisappear: (BOOL) animated {
  [super viewWillDisappear: animated];
  [self.view.window endEditing: YES]; //force the view to end here
  }