您好我继续尝试在iPhone模拟器固件4.2中调试我的iPhone应用程序,但没有任何应用程序打开,我收到此错误称为“SIGABRT”,gdb说:
+[MyAppDelegate registerForSystemEvents]: unrecognized selector sent to class...
我从未调用过这个函数......我所做的只是“新项目”,然后是“构建并运行”
有关如何解决此错误的任何建议?
谢谢, Thommaye
答案 0 :(得分:0)
您正在委托类中调用名为registerForSystemEvents:
的方法,并且您的委托中没有具有该名称的类方法。显示代码也会有所帮助。
答案 1 :(得分:0)
我在这个错误中挣扎了一段时间,直到现在才想出来,所以我想投入一些对我有用的东西,以防万一其他人偶然发现。
在我的方案中,我有一个PadController.h
和一个PhoneController.h
,它们都从AppController.h
继承而且我不断收到AppController
无法registerForSystemEvents:
的错误}
静态调用失败了,所以它本质上是尝试[AppController registerForSystemEvents:]
我的AppController
看起来像这样:
@interface AppController : NSObject <UIApplicationDelegate, UITabBarControllerDelegate>
第一:
确保您的App Delegate继承自NSObject
并符合UIApplicationDelegate
协议。
第二: 我在我的plist中有一行表示指向AppController的Principle Class。摆脱这一点实际上对我有用。我认为它试图两次启动AppController(一次来自Interface Builder,一次来自此)。
第三:
确保您的main.h
看起来像这样:
@autoreleasepool {
int retVal = UIApplicationMain(argc, argv, nil, nil);
return retVal;
}