目标c:iPhone编程错误(SIGABRT)

目标c:iPhone编程错误(SIGABRT)

问题描述:

这是错误显示在控制台:目标c:iPhone编程错误(SIGABRT)

objc[1589]: Class Account is implemented in both /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.0.sdk/System/Library/PrivateFrameworks/Message.framework/Message and /Users/hugohnery-garon/Library/Application Support/iPhone Simulator/4.0/Applications/E6874214-2DFA-4446-942D-B8215721A4F9/Drunke!.app/Drunke!. One of the two will be used. Which one is undefined. 
    2010-06-29 17:50:50.108 Drunke![1589:207] -[Account initWithCoder:]: unrecognized selector sent to instance 0x7269bb0 
    2010-06-29 17:50:50.113 Drunke![1589:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[Account initWithCoder:]: unrecognized selector sent to instance 0x7269bb0' 
    *** Call stack at first throw: 
    (
     0 CoreFoundation      0x02b3d919 __exceptionPreprocess + 185 
     1 libobjc.A.dylib      0x02c8b5de objc_exception_throw + 47 
     2 CoreFoundation      0x02b3f42b -[NSObject(NSObject) doesNotRecognizeSelector:] + 187 
     3 CoreFoundation      0x02aaf116 ___forwarding___ + 966 
     4 CoreFoundation      0x02aaecd2 _CF_forwarding_prep_0 + 50 
     5 UIKit        0x004e3699 -[UIClassSwapper initWithCoder:] + 237 
     6 UIKit        0x005ba77e UINibDecoderDecodeObjectForValue + 2592 
     7 UIKit        0x005ba076 UINibDecoderDecodeObjectForValue + 792 
     8 UIKit        0x005bb42d -[UINibDecoder decodeObjectForKey:] + 398 
     9 UIKit        0x0039a77e -[UIViewController initWithCoder:] + 1039 
     10 UIKit        0x003ab836 -[UITabBarController initWithCoder:] + 58 
     11 UIKit        0x005ba77e UINibDecoderDecodeObjectForValue + 2592 
     12 UIKit        0x005bb42d -[UINibDecoder decodeObjectForKey:] + 398 
     13 UIKit        0x0039a570 -[UIViewController initWithCoder:] + 513 
     14 UIKit        0x004e3699 -[UIClassSwapper initWithCoder:] + 237 
     15 UIKit        0x005ba77e UINibDecoderDecodeObjectForValue + 2592 
     16 UIKit        0x005bb42d -[UINibDecoder decodeObjectForKey:] + 398 
     17 UIKit        0x004e333c -[UIRuntimeConnection initWithCoder:] + 153 
     18 UIKit        0x005ba77e UINibDecoderDecodeObjectForValue + 2592 
     19 UIKit        0x005ba076 UINibDecoderDecodeObjectForValue + 792 
     20 UIKit        0x005bb42d -[UINibDecoder decodeObjectForKey:] + 398 
     21 UIKit        0x004e2634 -[UINib instantiateWithOwner:options:] + 804 
     22 UIKit        0x004e44b5 -[NSBundle(UINSBundleAdditions) loadNibNamed:owner:options:] + 168 
     23 UIKit        0x002f39bb -[UIApplication _loadMainNibFile] + 172 
     24 UIKit        0x002f490d -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] + 198 
     25 UIKit        0x002fe452 -[UIApplication handleEvent:withNewEvent:] + 1958 
     26 UIKit        0x002f7074 -[UIApplication sendEvent:] + 71 
     27 UIKit        0x002fbac4 _UIApplicationHandleEvent + 7495 
     28 GraphicsServices     0x03216afa PurpleEventCallback + 1578 
     29 CoreFoundation      0x02b1edc4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 52 
     30 CoreFoundation      0x02a7f737 __CFRunLoopDoSource1 + 215 
     31 CoreFoundation      0x02a7c9c3 __CFRunLoopRun + 979 
     32 CoreFoundation      0x02a7c280 CFRunLoopRunSpecific + 208 
     33 CoreFoundation      0x02a7c1a1 CFRunLoopRunInMode + 97 
     34 UIKit        0x002f4226 -[UIApplication _run] + 625 
     35 UIKit        0x002ffb58 UIApplicationMain + 1160 
     36 Drunke!        0x0000213e main + 84 
     37 Drunke!        0x000020e1 start + 53 
     38 ???         0x00000001 0x0 + 1 
    ) 
    terminate called after throwing an instance of 'NSException' 
    Program received signal: “SIGABRT”. 
    kill 
    quit 

    The Debugger has exited with status 0. 

好了,现在我为我的帐户更名,它并没有解决这个问题。

+0

“它不工作更多”是什么意思?你是否得到完全相同的错误? – JeremyP 2010-06-30 08:38:09

+0

我们可以看到MyAccount类的代码吗? – JeremyP 2010-06-30 08:38:40

您已经创建了自己的类Account,它与Message框架中名为Account的类冲突。尝试将您自己的类重命名为MyAccount或您选择的任何名称。

+0

好thx,但我如何重新命名一个类。如果我“获取信息”并改变它,它不起作用。 – hugo411 2010-06-29 23:13:06

+0

好的,我改了名字,但它仍然不起作用 – hugo411 2010-06-29 23:18:09

看起来您已经定义了一个已经在系统框架中定义的类Account。在类名前面添加一些东西,以免碰撞。例如MYAccount。