NSObject doesNotRecogniseSelector崩溃程序

iGb*_*nam 2 iphone cocoa-touch objective-c

我正在学习如何开发iPhone应用程序,我遇到了一个有趣的问题.在我的视图控制器类中,我有一个int变量,我@synthesize和重载setter(虽然)这是不需要的.当我运行应用程序时,我得到了这个跟踪:

***第一次投掷筹码:(

0   CoreFoundation                      0x024e0919 __exceptionPreprocess + 185
1   libobjc.A.dylib                     0x0262e5de objc_exception_throw + 47
2   CoreFoundation                      0x024e242b -[NSObject(NSObject) doesNotRecognizeSelector:] + 187
3   CoreFoundation                      0x02452116 ___forwarding___ + 966
4   CoreFoundation                      0x02451cd2 _CF_forwarding_prep_0 + 50
5   Awesome App                         0x00001ff1 -[Controller refreshView] + 69
6   Awesome App                         0x00002180 -[Controller awakeFromNib] + 133
7   UIKit                               0x004a3924 -[UINib instantiateWithOwner:options:] + 1556
8   UIKit                               0x004a54b5 -[NSBundle(UINSBundleAdditions) loadNibNamed:owner:options:] + 168
9   UIKit                               0x002b49bb -[UIApplication _loadMainNibFile] + 172
10  UIKit                               0x002b590d -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] + 198
11  UIKit                               0x002bf452 -[UIApplication handleEvent:withNewEvent:] + 1958
12  UIKit                               0x002b8074 -[UIApplication sendEvent:] + 71
13  UIKit                               0x002bcac4 _UIApplicationHandleEvent + 7495
14  GraphicsServices                    0x02d46afa PurpleEventCallback + 1578
15  CoreFoundation                      0x024c1dc4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 52
16  CoreFoundation                      0x02422737 __CFRunLoopDoSource1 + 215
17  CoreFoundation                      0x0241f9c3 __CFRunLoopRun + 979
18  CoreFoundation                      0x0241f280 CFRunLoopRunSpecific + 208
19  CoreFoundation                      0x0241f1a1 CFRunLoopRunInMode + 97
20  UIKit                               0x002b5226 -[UIApplication _run] + 625
21  UIKit                               0x002c0b58 UIApplicationMain + 1160
22  Awesome App                         0x00001e4c main + 102
23  Awesome App                         0x00001ddd start + 53
Run Code Online (Sandbox Code Playgroud)

)抛出'NSException'实例后终止调用程序收到信号:"SIGABRT".

我的注意力被吸引到第2行.当我尝试int为我的类iVar 分配值时会发生这种情况.请问您能告诉我问题是什么以及如何解决这个问题?

太感谢了.

Chu*_*uck 6

嗯,是的 的默认实现doesNotRecognizeSelector:应该杀了你的计划.那不是问题.问题是您正在向对象发送无法响应的消息.在这种情况下,看起来Controller无法响应消息refreshView.