iPhone开发:SIGABRT错误

时间:2011-08-17 03:34:49

标签: iphone objective-c xcode exception sigabrt

我非常擅长为iPhone开发。我试图创建一个基本的应用程序,但出现SIGABRT错误。当我按下模拟器中的按钮时,游戏崩溃并出现SIGABRT错误。它是NSInvalidArgumentException。 这是按钮的一些代码: .h文件:

-(IBAction)abc;


-(IBAction)abc {
    b *aaa = [[b alloc] initWithNibName:@"b" bundle:nil];
    [self presentModalViewController:aaa animated:NO];
    [aaa release];
}

非常感谢!

4 个答案:

答案 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文件中。