我非常擅长为iPhone开发。我试图创建一个基本的应用程序,但出现SIGABRT错误。当我按下模拟器中的按钮时,游戏崩溃并出现SIGABRT错误。它是NSInvalidArgumentException。 这是按钮的一些代码: .h文件:
-(IBAction)abc;
-(IBAction)abc {
b *aaa = [[b alloc] initWithNibName:@"b" bundle:nil];
[self presentModalViewController:aaa animated:NO];
[aaa release];
}
非常感谢!
答案 0 :(得分:0)
在您的应用程序中找到SIGBART的麻烦方法是使用调试工具,您可以在其中找到获取此信号的应用程序的确切位置。 你的代码看起来很好,也许你的b类文件会出现一些错误
希望它有所帮助......
答案 1 :(得分:0)
也许您触摸时分配按钮的方法不存在,例如
UIButton *myButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 100, 25)];
[myButton addTarget:self action:@selector(myMethod) forControlEvents:UIControlEventTouchUpInside];
确保实现文件(.m文件)中存在“myMethod”,并且头文件(.h文件)中有方法声明
// Header file (.h)
@interface myClass
{
}
- (void) myMethod;
@end
...
// Implementation file (.m)
...
- (void) myMethod
{
// do something
}
答案 2 :(得分:0)
如果您在XIB中添加了按钮,则必须忘记使用IBAction添加其事件。并将其与Touch up内部类型绑定。如果仍然不起作用,你需要调试和检查,按钮单击你正在做什么程序,并在哪一点崩溃。
答案 3 :(得分:0)
您将真正的IBAction放在.m文件中。