我的应用程序发生了奇怪的崩溃(仅限 iPad 的 9.x),我不确定如何调试它,因为日志无助于发现正在发生的事情。
最奇怪的是日志显示Auto layout internal error
,但我的应用程序没有打开自动布局。
任何人都知道如何调试导致它的原因?
我认为导致崩溃的部分代码:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapBackground:)];
[self.ivBackground addGestureRecognizer:tap]; // UIImageView (background)
}
- (void)tapBackground:(UITapGestureRecognizer*)tap
{
[self.view endEditing:YES];
[self dismissViewControllerAnimated:YES completion:nil];
}
最佳答案
从崩溃日志中您可以看到它与设备的键盘有关。您能否在第 4 行和第 36 行之间展开崩溃日志或上传完整的崩溃日志,以便我查看。谢谢
它也被标记为 bug!
在崩溃日志中。
更新:
检查完整日志后,看起来像单指轻敲
20 -[UITextInteractionAssistant(UITextInteractionAssistant_Internal) oneFingerTap:]
导致 textField 成为第一响应者,即设置键盘,但同时手势触发了 endEditing 和 viewController 的解除。
键盘正在使应用程序崩溃,因为在自动布局完成设置之前已删除 textField。
我会重新审视你如何构建你的观点和姿态,以及你如何解雇或关闭那个 VC。
关于ios - 调试一个奇怪的崩溃 - NSInternalInconsistencyException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35593259/