在我的应用中,经常会报告以下日志中的许多崩溃事件,但是即使使用了多个测试设备和iOS版本,我也无法重现它。因此,无法在Xcode上找到原因。因为跟踪中没有步骤,所以导致了我的代码,所以我无法想象找到其来源的任何方法。该应用程序本身非常复杂,当然会使用许多嵌入式的滚动 View 。

有谁知道从哪里开始寻找?还是以前有人遇到过类似的问题?

非常感谢您的帮助!

最好的祝福,
弗洛里安

OS Version:      iPhone OS 6.0.1 (10A523)
Report Version:  104

Exception Type:  SIGSEGV
Exception Codes: SEGV_ACCERR at 0xd1d28fbc
Crashed Thread:  0

Thread 0 Crashed:
0   libobjc.A.dylib                     0x392e65b0 objc_msgSend + 16
1   UIKit                               0x35a839f7 -[UIScrollView(UIScrollViewInternal)  _scrollViewAnimationEnded:finished:] + 135
2   UIKit                               0x35a838e9 -[UIAnimator stopAnimation:] + 469
3   UIKit                               0x35b1e257 -[UIAnimator(Static) _advanceAnimationsOfType:withTimestamp:] + 295
4   UIKit                               0x35a83381 -[UIAnimator(Static) _LCDHeartbeatCallback:] + 53
5   QuartzCore                          0x323d3071 CA::Display::DisplayLink::dispatch(unsigned long long, unsigned long long) + 161
6   QuartzCore                          0x323d2fc9 CA::Display::IOMFBDisplayLink::callback(__IOMobileFramebuffer*, unsigned long long, unsigned long long, unsigned long long, void*) + 65
7   IOMobileFramebuffer                 0x340befd7 IOMobileFramebufferVsyncNotifyFunc + 155
8   IOKit                               0x35ee8449 IODispatchCalloutFromCFMessage + 193
9   CoreFoundation                      0x339605db __CFMachPortPerform + 119
10  CoreFoundation                      0x3396b173 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 35
11  CoreFoundation                      0x3396b117 __CFRunLoopDoSource1 + 139
12  CoreFoundation                      0x33969f99 __CFRunLoopRun + 1385
13  CoreFoundation                      0x338dcebd CFRunLoopRunSpecific + 357
14  CoreFoundation                      0x338dcd49 CFRunLoopRunInMode + 105
15  GraphicsServices                    0x33f222eb GSEventRunModal + 75
16  UIKit                               0x3596a2f9 UIApplicationMain + 1121
17                                 0x00005233 main (main.m:14)

最佳答案

我有同样的崩溃。原来是因为我们要使用[controller setContentOffset:newPt animation:YES]为 Controller 设置动画,并在 Controller 上实现了scrollViewDidScroll委托(delegate)方法。单击屏幕上的按钮可让您前进到另一个 Controller ,因此,如果用户在动画进行过程中设法单击该按钮,我们将遇到原始海报的崩溃。解决方法就是在dealloc中将委托(delegate)设置为nil。

关于ios - 在-[UIScrollView(UIScrollViewInternal)_scrollViewAnimationEnded :finished:]上找不到崩溃的原因,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14293725/

10-12 16:17
查看更多