我有一个问题,不时发生,我找不到 解决方案,有人可以帮助我吗?谢谢
以下是崩溃的日志以及调用方法的位置
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];
}
}
}
}
答案 0 :(得分:0)
您没有提供足够的代码来清除问题的根本原因。发生崩溃是因为对象中的jobsViewController ivar指向已释放的对象。但是为什么它在此时被解除分配?基于此代码无法知道。最可能的原因是您忘记保留它或该财产未被声明为“保留”。但是,可能存在许多编程错误,这些错误是根本原因。您需要进行代码审查,专门查找与不保留jobsViewController指向的对象相关的问题。