在NIB中更改ViewController

时间:2011-06-07 06:42:04

标签: iphone objective-c uiview uinavigationcontroller rootview

我创建了一个名为ktemp1的基于VIEW的应用程序。它生成..,ktempView1Controller.h和ktempView1Controller.m ..,

后来我创建了另一个视图..,说“ktemp2ViewController.h”和“ktemp2ViewController.m”。

我在AppDeligate中定义了一个navigationController,并将rootViewController设置为ktempView1ViewController。,完成了所有工作正常...

但是,我想要的是将ktemp2ViewController设置为rootViewController。

要做到这一点,我将MainWindow.Xib中的ViewController类更改为ktemp2ViewController并将rootViewController更改为ktemp2ViewController ..但是每当我运行应用程序时,我将ktempView1作为rootView,甚至当我点击ktemp2ViewController时在MainWindow.Xib中,IB中的视图从ktemp1ViewController加载... 谁能指导我?

2 个答案:

答案 0 :(得分:0)

在标准的苹果模板中,您会在AppDelegate didFinishLaunching中找到类似的内容。

window.rootViewControlller = self.viewController;

应用程序中应该只有一个rootViewController,你不应该尝试将其设置为除AppDelegate以外的任何地方。

那么在你的情况下相关的是appDelegate的viewController属性。当你查看你的MainWindow.xib时,你需要确保它包含一个kTempViewController2并连接到你的AppDelegate.viewController属性(AppDelegates应该是MainWindow.xib所有者)。

答案 1 :(得分:0)

我希望你的mainWindow.xib中有导航控制器。

探索它,你可以看到一个视图控制器(根视图控制器)和其他视图控制器(如果有的话)。

选择根视图控制器,设置其类类型并指定其nib名称。