Xcode 不使用segue在视图控制器之间移动

Xcode 不使用segue在视图控制器之间移动,xcode,ipad,ios6,Xcode,Ipad,Ios6,我知道这应该很简单,但如何在不使用segue的情况下在iPad上的视图控制器之间移动呢?我有一个主菜单视图控制器,上面有一个按钮,可以调用newViewButton操作。我想打开名为MonitorMenu的视图控制器 - (IBAction)newViewButton:(id)sender { [self.navigationController pushViewController:MonitorMenu animated:NO]; } 它说MonitorMenu是一个未知的接

我知道这应该很简单,但如何在不使用segue的情况下在iPad上的视图控制器之间移动呢?我有一个主菜单视图控制器,上面有一个按钮,可以调用newViewButton操作。我想打开名为MonitorMenu的视图控制器

- (IBAction)newViewButton:(id)sender {

    [self.navigationController pushViewController:MonitorMenu  animated:NO];

}
它说MonitorMenu是一个未知的接口


我做错了什么?

以下是我所指的关于声明MonitorMenu对象的内容:

在当前ViewController的.h文件中:

           MonitorMenu *_menu;
           //declaring your Monitor Menu object for use
           //then pushing that view onto the stack.
           _menu = [[MonitorMenu alloc] initWithNibName:@"MonitorMenu" bundle:nil];
          [self.navigationController pushViewController:_menu NO];
在当前ViewController的.m文件中:

           MonitorMenu *_menu;
           //declaring your Monitor Menu object for use
           //then pushing that view onto the stack.
           _menu = [[MonitorMenu alloc] initWithNibName:@"MonitorMenu" bundle:nil];
          [self.navigationController pushViewController:_menu NO];

如果您使用的是故事板,则可以执行以下操作:

1通过单击实际视图下方栏中的黄色小球,选择要在故事板上推送MonitorMenu的视图控制器

2然后在“标识检查器”选项卡中为其设置故事板ID。在您的情况下,我会使用monitorMenuView或类似的工具

3在要“推送”的视图控制器的.h文件中,导入要推送的类的.h:

#import "MonitorMenu.h"
4然后,在IBAction中:

- (IBAction)newViewButton:(id)sender {

    MonitorMenu *monitorMenuViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"monitorMenuView"];
    [self.navigationController pushViewController:monitorMenuViewController animated:NO];

}

您是否声明了和您的MonitorMenu对象,以及它是否继承自ViewController类?再说一遍,如果这很简单,我很抱歉,但您的意思是什么?如何声明MonitorMenu对象?当我创建MonitorMenu视图控制器时,我为视图控制器添加了h和m文件-这就是您从ViewController类继承的意思吗?是的,我只是想确保MonitorMenu ViewController不是从NSObject或其他对象继承的。我将添加一些代码来推送导航控制器。@Richard您使用的是故事板吗?是的-我最初使用segue设置它,但我删除了它。会不会有什么东西把事情搞砸了?删除它的原因是我想在推之前对页面进行一些检查。支票还行,但我无法兑现。谢谢你的帮助。我已经试过了,但当我点击按钮时什么也没发生。我在中放置了一个断点,代码被运行/访问,但它只是通过,并且没有加载MonitorMenu视图。您是否在视图控制器中导入了MonitorMenu.h文件?您的意思是将其包含在主菜单的.m文件中?导入MonitorMenu.h-是的,我已经完成了。请尝试在.m文件中导入MonitorMenu.h。尝试此操作时是否收到任何警告?是否在序列图像板中的视图控制器的标识检查器中设置了自定义类?我唯一能想到的是,如果按钮未正确连接到iAction。我会先检查一下,然后在iAction方法中放一个NSLog,看看是否真的发生了什么NSLog@working; 之后[self.navigationController pushViewController…行。它显示在NSLog中工作,因此代码正在运行。不确定出了什么问题。感谢您的帮助-别担心。我会继续。再次感谢。请尝试此操作NSLog@ViewController:%@,monitorMenuView;该iAction最后一行中的视图控制器,并将monitorMenuView替换为whatever当你实例化它时调用它。它找到正确的视图控制器了吗?