0
가끔 발생하는 문제가있어서 해결책을 찾을 수 없습니까? 누군가 도와 줄 수 있습니까? 감사합니다EXC_BAD_ACCESS (SIGSEGV) 및 KERN_INVALID_ADDRESS (0xa0000008)
다음는 충돌의 로그와 메소드가 호출된다
0 libobjc.A.dylib 0x00003fb0 objc_msgSend + 16
1 Authentic 0x00048ce2 -[JobsSubtitleView touchUp:] (JobsSubtitleView.m:172)
2 CoreFoundation 0x00026486 -[NSObject performSelector:withObject:withObject:] + 46
3 UIKit 0x00032bf8 -[UIApplication sendAction:to:from:forEvent:] + 56
4 UIKit 0x00032bb4 -[UIApplication sendAction:toTarget:fromSender:forEvent:] + 24
5 UIKit 0x00032b92 -[UIControl sendAction:to:forEvent:] + 38
6 UIKit 0x00032902 -[UIControl(Internal) _sendActionsForEvents:withEvent:] + 486
7 UIKit 0x0003307a -[UIControl touchesEnded:withEvent:] + 470
8 UIKit 0x00031914 -[UIWindow _sendTouchesForEvent:] + 312
9 UIKit 0x0003133a -[UIWindow sendEvent:] + 374
10 UIKit 0x000076e6 -[UIApplication sendEvent:] + 350
11 UIKit 0x000070d2 _UIApplicationHandleEvent + 5802
12 GraphicsServices 0x00004f44 PurpleEventCallback + 876
13 CoreFoundation 0x00083a28 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 32
14 CoreFoundation 0x000839ca __CFRunLoopDoSource1 + 134
15 CoreFoundation 0x000825f0 __CFRunLoopRun + 1364
16 CoreFoundation 0x00023f72 CFRunLoopRunSpecific + 294
17 CoreFoundation 0x00023e3a CFRunLoopRunInMode + 98
18 GraphicsServices 0x0000411e GSEventRunModal + 150
19 UIKit 0x00002472 UIApplicationMain + 1074
20 Authentic 0x0006bbd0 main (main.m:17)
21 Authentic 0x00002e8c start + 32
- (void) touchUp:(id)sender {
if(![[UIApplication sharedApplication] isNetworkActivityIndicatorVisible]) {
UIButton *jobsSubtitleButton = (UIButton*)sender;
[jobsSubtitleButton setSelected:!jobsSubtitleButton.selected];
[jobsViewController setClickType:YES]; /*** LINE 172 ***/
if(![jobsViewController isSearching]) {
[jobsViewController setIsSearching:YES];
if([jobsViewController clickType]) {
[self performSelector:@selector(reloadJobs) withObject:nil afterDelay:1.0f];
} else {
[self performSelector:@selector(reloadJobs) withObject:nil];
}
}
}
} 당신은 문제의 근본 원인을 명확하게하기에 충분한 코드를 제공하지 않은
'''jobsViewController'''가 초기화되었습니다. –
jobsViewController는 initWithFrame : frame 메소드에서 초기화됩니다. touchUp 메소드는 4 개의 버튼으로 동시에 호출 할 수 있으며, changeType은 setType이 NO 일 경우에만 setClickType YES로 설정됩니다. 이럴 수있어? 감사합니다 – ruiaureliano
이 충돌을 다시 만들 수 있다면 충돌이 발생했을 때 디버거에 표시된대로 jobsViewController의 값을 결정할 수 있습니까? 충돌 시나리오에서 포인터가 올바르지 않은 것 같습니다. –