当我在横向 ViewController 上调用 PopViewController 时发生崩溃。但是,当我在 Portrait ViewController 上调用 PopViewController 时,不会发生崩溃。
这只发生在 iOS7 上 - 以前工作正常......
[self.navigationController popViewControllerAnimated:TRUE];
我非常坚持这一点,所以任何帮助将不胜感激:)
这是我的符号化崩溃日志:
Exception Type: EXC_CRASH (SIGABRT) Exception Codes: 0x0000000000000000, 0x0000000000000000 Triggered by Thread: 0
Last Exception Backtrace: 0 CoreFoundation
0x2d9b2f4e __exceptionPreprocess + 1261 libobjc.A.dylib 0x3801b6aa objc_exception_throw + 34
2 CoreFoundation 0x2d9b2e90 +[NSException raise:format:] + 100
3 UIKit 0x3020ee70 -[UIViewController _preferredInterfaceOrientationForPresentationInWindow:fromInterfaceOrientation:] + 496
4 UIKit 0x3020d6ae -[UIWindowController transition:fromViewController:toViewController:target:didEndSelector:animation:] + 2054
5 UIKit 0x3023ff86 -[UIViewController _dismissViewControllerWithTransition:from:completion:] + 1390
6 UIKit 0x301ef1e0 -[UIViewController dismissViewControllerWithTransition:completion:] + 1024
7 UIKit 0x303ecae2 -[UINavigationController _popViewControllerAndUpdateInterfaceOrientationAnimated:] + 814 8 UIKit 0x301ef6de -[UINavigationController _popViewControllerWithTransition:allowPoppingLast:] + 290
9 MyApp 0x00087e5a 0x55000 + 208474
10 MyApp 0x00088c56 0x55000 + 212054
11 MyApp 0x000889aa 0x55000 + 211370
12 MyApp 0x000a13f6 0x55000 + 312310
13 UIKit 0x3023b540 -[UIWindowController transitionViewDidComplete:fromView:toView:removeFromView:] + 1908
14 UIKit 0x3023acf6 __101-[UIWindowController transition:fromViewController:toViewController:target:didEndSelector:animation:]_block_invoke293 + 166
15 UIKit 0x3023ac1e -[_UIViewControllerTransitionContext completeTransition:] + 70
16 UIKit 0x3023ab08 -[UITransitionView notifyDidCompleteTransition:] + 284 17 UIKit
0x3023a610 -[UITransitionView _didCompleteTransition:] + 94018 UIKit 0x3015bc32 -[UIViewAnimationState sendDelegateAnimationDidStop:finished:] + 174
19 UIKit 0x3015bb4a -[UIViewAnimationState animationDidStop:finished:] + 66
20 QuartzCore 0x2fdb3d04 CA::Layer::run_animation_callbacks(void*) + 228
21 libdispatch.dylib 0x384fed62 _dispatch_client_callout + 18
22 libdispatch.dylib 0x385057bc _dispatch_main_queue_callback_4CF$VARIANT$mp + 264
23 CoreFoundation 0x2d97d81c CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE + 4
24 CoreFoundation 0x2d97c0f0 __CFRunLoopRun + 1296
25 CoreFoundation 0x2d8e6ce2 CFRunLoopRunSpecific + 518
26 CoreFoundation 0x2d8e6ac6 CFRunLoopRunInMode + 102
27 GraphicsServices 0x325b427e GSEventRunModal + 134
28 UIKit 0x30188a3c UIApplicationMain + 1132
29 MyApp 0x0005ca84 0x55000 + 31364
30 MyApp 0x0005ca0c 0x55000 + 31244
最佳答案
事实证明,它在 iOS7 上崩溃的原因是前一个 View Controller 缺少一段代码,告诉它以纵向显示下一页!
-(UIInterfaceOrientation)preferredInterfaceOrientationForPresentation {
return UIInterfaceOrientationPortrait;
}
关于iOS7 崩溃 - PopViewController 在 Landscape ViewController 上调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18955633/