[self.navigationController pushVIEwController:controller animated:YES];
事情只发生在模拟器上,而不是在IOS设备中进行调试.
有什么机会我可以解决这个问题吗?
转储:
2014-03-25 15:18:45.061 Cookila[657:5507] *** Assertion failure in voID _UIPerformResizeOfTextVIEwForTextContainer(NSLayoutManager *,UIVIEw<NSTextContainerVIEw> *,NSTextContainer *,NSUInteger)(),/SourceCache/UIFoundation_Sim/UIFoundation-264.8/UIFoundation/TextSystem/NSLayoutManager_Private.m:15102014-03-25 15:18:45.086 Cookila[657:5507] *** Terminating app due to uncaught exception 'NSInternalinconsistencyException',reason: 'Only run on the main thread!'*** First throw call stack:( 0 CoreFoundation 0x027251e4 __exceptionPreprocess + 180 1 libobjc.A.dylib 0x024a48e5 objc_exception_throw + 44 2 CoreFoundation 0x02725048 +[NSException raise:format:arguments:] + 136 3 Foundation 0x01f43b20 -[NSAssertionHandler handleFailureInFunction:file:lineNumber:description:] + 101 4 UIFoundation 0x0947fe25 -[NSLayoutManager(nsprivate) _resizeTextVIEwForTextContainer:] + 419 5 UIFoundation 0x0947fb0a -[NSLayoutManager(nsprivate) _recalculateUsageForTextContainerAtIndex:] + 2083 6 UIFoundation 0x094b4289 _enableTextVIEwResizing + 234 7 UIFoundation 0x094b7e89 -[NSLayoutManager textStorage:edited:range:changeInLength:invalIDatedRange:] + 688 8 UIFoundation 0x094b7f0e -[NSLayoutManager processEditingForTextStorage:edited:range:changeInLength:invalIDatedRange:] + 82 9 UIFoundation 0x094e0ab5 -[NSTextStorage _notifyEdited:range:changeInLength:invalIDatedRange:] + 153 10 UIFoundation 0x094e05f0 -[NSTextStorage processEditing] + 462 11 UIFoundation 0x094e0199 -[NSTextStorage endEditing] + 80 12 UIFoundation 0x094e0223 -[NSTextStorage coordinateEditing:] + 66 13 UIKit 0x016618cb -[UITextVIEw setAttributedText:] + 254 14 UIKit 0x01660c16 -[UITextVIEw initWithCoder:] + 706 15 UIKit 0x01372d6d UINibDecoderDecodeObjectForValue + 704 16 UIKit 0x01372f6e UINibDecoderDecodeObjectForValue + 1217 17 UIKit 0x01372aa1 -[UINibDecoder decodeObjectForKey:] + 114 18 UIKit 0x00faafa4 -[UIVIEw initWithCoder:] + 842 19 UIKit 0x01372d6d UINibDecoderDecodeObjectForValue + 704 20 UIKit 0x01372f6e UINibDecoderDecodeObjectForValue + 1217 21 UIKit 0x01372aa1 -[UINibDecoder decodeObjectForKey:] + 114 22 UIKit 0x00faafa4 -[UIVIEw initWithCoder:] + 842 23 UIKit 0x00fcdff1 -[UIScrollVIEw initWithCoder:] + 58 24 UIKit 0x01372d6d UINibDecoderDecodeObjectForValue + 704 25 UIKit 0x01372aa1 -[UINibDecoder decodeObjectForKey:] + 114 26 UIKit 0x0120d7a7 -[UIRuntimeConnection initWithCoder:] + 191 27 UIKit 0x01372d6d UINibDecoderDecodeObjectForValue + 704 28 UIKit 0x01372f6e UINibDecoderDecodeObjectForValue + 1217 29 UIKit 0x01372aa1 -[UINibDecoder decodeObjectForKey:] + 114 30 UIKit 0x0120cc21 -[UINib instantiateWithOwner:options:] + 1117 31 UIKit 0x010756f5 -[UIVIEwController _loadVIEwFromNibnamed:bundle:] + 280 32 UIKit 0x01075e9d -[UIVIEwController loadVIEw] + 302 33 UIKit 0x010760d3 -[UIVIEwController loadVIEwIfrequired] + 78 34 UIKit 0x010765d9 -[UIVIEwController vIEw] + 35 35 UIKit 0x01090942 -[UINavigationController _startCustomTransition:] + 778 36 UIKit 0x0109d8f7 -[UINavigationController _startDeferredTransitionIfNeeded:] + 688 37 UIKit 0x0109e4e9 -[UINavigationController __vIEwWillLayoutSubvIEws] + 57 38 UIKit 0x011df0d1 -[UILayoutContainerVIEw layoutSubvIEws] + 213 39 UIKit 0x00fc6964 -[UIVIEw(CALayerDelegate) layoutSublayersOfLayer:] + 355 40 libobjc.A.dylib 0x024b682b -[NSObject performSelector:withObject:] + 70 41 QuartzCore 0x00e2e45a -[CALayer layoutSublayers] + 148 42 QuartzCore 0x00e22244 _ZN2CA5Layer16layout_if_neededEPNS_11TransactionE + 380 43 QuartzCore 0x00e220b0 _ZN2CA5Layer28layout_and_display_if_neededEPNS_11TransactionE + 26 44 QuartzCore 0x00d887fa _ZN2CA7Context18commit_transactionEPNS_11TransactionE + 294 45 QuartzCore 0x00d89b85 _ZN2CA11Transaction6commitEv + 393 46 QuartzCore 0x00d89dd6 _ZN2CA11Transaction14release_threadEPv + 226 47 libsystem_pthread.dylib 0x031f581c _pthread_tsd_cleanup + 93 48 libsystem_pthread.dylib 0x031f227e _pthread_exit + 108 49 libsystem_pthread.dylib 0x031f21e8 pthread_exit + 33 50 Foundation 0x01ef1dd2 __NSFinalizeThreadData + 0 51 Foundation 0x01eee97e __NSThread__main__ + 1299 52 libsystem_pthread.dylib 0x031f15fb _pthread_body + 144 53 libsystem_pthread.dylib 0x031f1485 _pthread_struct_init + 0 54 libsystem_pthread.dylib 0x031f6cf2 thread_start + 34)libc++abi.dylib: terminating with uncaught exception of type NSException解决方法 请从主线程做你的UI回调.你不能从后台线程更新您的UI.
使用Grand Central dispatch进行UI更新:
dispatch_async(dispatch_get_main_queue(),^{ /* Your UI code */});总结
以上是内存溢出为你收集整理的ios – “只在主线程上运行”异常是模拟器全部内容,希望文章能够帮你解决ios – “只在主线程上运行”异常是模拟器所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)