Cocoa - 将导航控制器添加到子视图

时间:2011-01-27 03:51:36

标签: objective-c cocoa-touch uinavigationcontroller

我目前正在开发一款适用于iPad的基于视图的应用,它在主页面上有3个独立的视图。顶部的自定义菜单,侧面的状态列表和主视图。我在主视图中遇到的问题是尝试添加导航控制器。

在AppPadViewController.h中

@interface AppPadViewController.h : UIViewController {
    MainViewController *MainView;
}

@property (nonatomic,retain) IBOutlet MainViewController *MainView;

在AppPadViewController.m中

@synthesize MainView;

- (void) viewDidLoad {
    [super viewDidLoad];

    MainView.navigationItem.title = @"Home";
    UINavigationController *mainNavController = [[UINavigationController alloc] initWithNibName:@"MainView" bundle:[NSBundle mainBundle]];

    self.MainView = [MainViewController alloc] initWithRootViewController:mainNavController];
}

在笔尖中我添加了我想要的视图,并将其绑定到MainView,然后添加了MainViewController并将其绑定到文件所有者并查看。

当我运行它时,我在initWithRootViewController行上抛出了一个'无法识别的选择器'错误。

任何人都可以看到代码有任何问题,或建议更好的方法将导航控制器添加到子视图中吗?

1 个答案:

答案 0 :(得分:1)

您的两个视图控制器已颠倒过来。尝试这样的事情:

self.MainView = [[MainViewController alloc] initWithNibName:@"MainView" bundle:[NSBundle mainBundle]];

UINavigationController *mainNavController = [[UINavigationController alloc] initWithRootViewController:MainView];