1

尝试运行代码,但它在调试控制台中崩溃或以 SIGABRT 消息终止

- (IBAction)backButtonPushed:(id)sender {

    ViewController *backView = [backView initWithNibName:nil bundle:NULL];
    backView.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
    [self presentModalViewController:backView animated:YES];
}
4

1 回答 1

1

不知道你想用这行代码做什么,但无论如何它都是错误的:

ViewController *backView = [backView initWithNibName:nil bundle:NULL]; 

从 backView 为 nil 的角度来看,您的崩溃很可能是由于该行(当您尝试将其呈现为模态视图控制器时,崩溃将在两行之后发生),或者实际上是其他一些对象,因为它是从未正确初始化。

你真正需要做的是(假设你有一个相应的接口文件,又名“nib”):

ViewController *backView = [[ViewController alloc] initWithNibName:@"<your controller's nib name here>" bundle:NULL]; 

或者,如果您完全以编程方式创建 ViewController,则使用:

ViewController *backView = [[ViewController alloc] init];

或者您定义的任何初始化方法。

于 2012-05-16T02:20:16.523 回答