Xcode xib中的appdelegate对象
我试图遵循apple photopicker示例,该示例在.xib文件中有一个appdelegate对象。appdelegate对象是如何进入xib文件的,为什么它很重要 在我的应用程序中,我想要一个像photopicker示例中那样的导航控制器。我的测试工作还没有包括导航控制器,我很难在测试工作中插入导航控制器,因为它只有一个视图控制器,因为界面生成器似乎已经决定不允许添加导航控制器。对我来说,用一个具有导航控制器架构的新应用重新开始,然后添加我的测试工作方法和类的副本是最简单的。还是说重新开始是不必要的?我怀疑将appdelegate对象插入xib将允许我更直接地使用exist测试工作 更新0 我想我是按照你回答中的说明做的。Xcode建议Xcode xib中的appdelegate对象,xcode,uinavigationcontroller,xib,Xcode,Uinavigationcontroller,Xib,我试图遵循apple photopicker示例,该示例在.xib文件中有一个appdelegate对象。appdelegate对象是如何进入xib文件的,为什么它很重要 在我的应用程序中,我想要一个像photopicker示例中那样的导航控制器。我的测试工作还没有包括导航控制器,我很难在测试工作中插入导航控制器,因为它只有一个视图控制器,因为界面生成器似乎已经决定不允许添加导航控制器。对我来说,用一个具有导航控制器架构的新应用重新开始,然后添加我的测试工作方法和类的副本是最简单的。还是说重新开
\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:我的评论链接到另一个答案,所以如果你觉得这个答案对你有好处,就投票吧:)