Xcode xib中的appdelegate对象

Xcode xib中的appdelegate对象,xcode,uinavigationcontroller,xib,Xcode,Uinavigationcontroller,Xib,我试图遵循apple photopicker示例,该示例在.xib文件中有一个appdelegate对象。appdelegate对象是如何进入xib文件的,为什么它很重要 在我的应用程序中,我想要一个像photopicker示例中那样的导航控制器。我的测试工作还没有包括导航控制器,我很难在测试工作中插入导航控制器,因为它只有一个视图控制器,因为界面生成器似乎已经决定不允许添加导航控制器。对我来说,用一个具有导航控制器架构的新应用重新开始,然后添加我的测试工作方法和类的副本是最简单的。还是说重新开

我试图遵循apple photopicker示例,该示例在.xib文件中有一个appdelegate对象。appdelegate对象是如何进入xib文件的,为什么它很重要

在我的应用程序中,我想要一个像photopicker示例中那样的导航控制器。我的测试工作还没有包括导航控制器,我很难在测试工作中插入导航控制器,因为它只有一个视图控制器,因为界面生成器似乎已经决定不允许添加导航控制器。对我来说,用一个具有导航控制器架构的新应用重新开始,然后添加我的测试工作方法和类的副本是最简单的。还是说重新开始是不必要的?我怀疑将appdelegate对象插入xib将允许我更直接地使用exist测试工作

更新0

我想我是按照你回答中的说明做的。Xcode建议
\u viewController
,我改变了这一点。我的应用程序适用于iPad和iPhone(我现在只在iPad上工作),所以我觉得它有点复杂。我编译得很好,但在我的xib文件中仍然没有看到appdelegate对象,即使PhotoPicker的xib文件中有一个

我想我仍然需要连接一些对象,但我也需要一些帮助。在PhotoPicker中,导航控制器的连接检查器表示参考插座位于
navController
AppDelegate
之间,AppDelegate的连接检查器表示参考插座位于
delegate
文件所有者之间。但是因为我的xib文件没有(BS)AppDelegate对象,我不知道没有它如何连接

@interface BSAppDelegate ()
@property (nonatomic, retain) IBOutlet UINavigationController *navigationController;
@end


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    // Override point for customization after application launch.
    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
        self.viewController = [[BSViewController alloc] initWithNibName:@"BSViewController_iPhone" bundle:nil];
    } else {
        self.viewController = [[BSViewController alloc] initWithNibName:@"BSViewController_iPad" bundle:nil];
    }
    UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:_viewController];
    self.window.rootViewController = navigationController;

    [self.window makeKeyAndVisible];
    return YES;
}
更新0

内部(BOOL)应用程序:(UIApplication*)应用程序使用选项完成启动:(NSDictionary*)启动选项,您可以像这样添加uinavigationcontroller:

UIViewController *viewController = … //load your first view controller with the initial xib here
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:viewController];
self.window.rootViewController = navigationController;
在(BOOL)应用程序内部:(UIApplication*)应用程序通过选项:(NSDictionary*)启动选项完成启动,您可以像这样添加uinavigationcontroller:

UIViewController *viewController = … //load your first view controller with the initial xib here
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:viewController];
self.window.rootViewController = navigationController;

你的回答看起来很有希望。请看我编辑的问题,因为我还没有完全理解。哦,我不明白你的要求。我想您应该在viewcontroller的顶部添加uinavigationcontroller。如果您希望在xib中包含AppDelegate对象,您可以看到以下答案:请将您的评论添加到问题中,以便我可以接受它。顺便说一句,我在使用您的链接响应时遇到了问题,因为当我第一次在对象库中查找
对象
时,我没有意识到实际上有一个对象名为
对象
,并试图欺骗其他对象成为一个对象。我的不好,但这类事情占用了我很多学习时间。谢谢。@zerowords:我的评论链接到另一个答案,所以如果你觉得这个答案对你有好处,就投票吧:)你的答案看起来很有希望。请看我编辑的问题,因为我还没有完全理解。哦,我不明白你的要求。我想您应该在viewcontroller的顶部添加uinavigationcontroller。如果您希望在xib中包含AppDelegate对象,您可以看到以下答案:请将您的评论添加到问题中,以便我可以接受它。顺便说一句,我在使用您的链接响应时遇到了问题,因为当我第一次在对象库中查找
对象
时,我没有意识到实际上有一个对象名为
对象
,并试图欺骗其他对象成为一个对象。我的不好,但这类事情占用了我很多学习时间。谢谢。@zerowords:我的评论链接到另一个答案,所以如果你觉得这个答案对你有好处,就投票吧:)