0

我有 2 个视图控制器:

  1. DemoAppViewController
  2. 关于ViewController

我在 DemoAppViewController 中有一个信息按钮,它应该打开 AboutViewController。

目前我遇到运行时错误,我似乎无法弄清楚为什么..

这是代码:

DemoAppViewController .h:

- (IBAction)showInfo;

DemoAppViewController.m:

- (IBAction)showInfo {

    AboutViewController *controller = [[AboutViewController alloc] initWithNibName:@"AboutViewController" bundle:nil];



    //setting style with modalTransition property

    controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;



    //show on screen

    [self presentViewController:controller animated:YES completion:nil];

}

当我使用 xCode 创建 AboutViewController 对象时,initWithNibName将以下代码添加到 AboutViewController.m:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil

{

    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];

    if (self) {

        // Custom initialization

    }

    return self;

}

我没有动过上面的内容。

运行时错误:

[DemoAppViewController showInfo:]: unrecognized selector sent to instance 0x688e450

有人可以告诉我哪里出错了吗?谢谢。

4

1 回答 1

0

此方法的选择器是@selector(showInfo),不是@selector(showInfo:)。如果您以编程方式分配它,只需更正它。如果您使用 IB -:(id) sender在方法中添加参数。

于 2012-09-11T00:20:49.780 回答