Xcode从.xib转换到故事板

Xcode从.xib转换到故事板,xcode,storyboard,Xcode,Storyboard,我下载了一个示例xcode项目来测试这一点。它有2个.xib文件(每个文件都有自己的视图控制器头和主视图)。我添加了一个情节提要,并将ViewController类设置为game和ViewController(即.xibs的名称),将主情节提要设置为摘要中的情节提要,但每当我运行应用程序时,它都只运行.xibs。 如何让它运行故事板而不是.xibs? 故事板中是否有我需要更改的部分,或者每个.xibs.h和.m的代码中是否都有 感谢您的帮助查看您的应用程序代理。下面是一个根据目标条件设置为使用X

我下载了一个示例xcode项目来测试这一点。它有2个.xib文件(每个文件都有自己的视图控制器头和主视图)。我添加了一个情节提要,并将ViewController类设置为game和ViewController(即.xibs的名称),将主情节提要设置为摘要中的情节提要,但每当我运行应用程序时,它都只运行.xibs。 如何让它运行故事板而不是.xibs? 故事板中是否有我需要更改的部分,或者每个.xibs.h和.m的代码中是否都有


感谢您的帮助

查看您的应用程序代理。下面是一个根据目标条件设置为使用XIB或故事板运行的示例

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
#ifdef FORMAT_XIB
    NSLog (@"XIB VERSION");
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    CVViewController* myViewController = nil;
    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
        myViewController = [ [CVViewController alloc] initWithNibName:@"CVViewController_iPhone" bundle:nil ];
    } else {
        myViewController = [ [CVViewController alloc] initWithNibName:@"CVViewController_iPad" bundle:nil ];
    }
    self.window.rootViewController = myViewController;
    [self.window makeKeyAndVisible];
#else
    NSLog (@"STORYBOARD VERSION");
#endif
    return YES;
}
如果你正在运行故事板应用程序,你不需要所有这些。删除它,以便应用程序使用options:method完成启动时只读取:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
return YES;
}

查看您的应用程序代理。下面是一个根据目标条件设置为使用XIB或故事板运行的示例

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
#ifdef FORMAT_XIB
    NSLog (@"XIB VERSION");
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    CVViewController* myViewController = nil;
    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
        myViewController = [ [CVViewController alloc] initWithNibName:@"CVViewController_iPhone" bundle:nil ];
    } else {
        myViewController = [ [CVViewController alloc] initWithNibName:@"CVViewController_iPad" bundle:nil ];
    }
    self.window.rootViewController = myViewController;
    [self.window makeKeyAndVisible];
#else
    NSLog (@"STORYBOARD VERSION");
#endif
    return YES;
}
如果你正在运行故事板应用程序,你不需要所有这些。删除它,以便应用程序使用options:method完成启动时只读取:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
return YES;
}

哇!我真的是个新手,这有点让人不知所措。这就是我拥有的:-(BOOL)应用程序:(UIApplication*)应用程序使用选项完成启动:(NSDictionary*)启动选项{self.window=[[UIWindow alloc]initWithFrame:[[UIScreen mainScreen]bounds]];//覆盖应用程序启动后的自定义点。self.viewController=[[viewController alloc]initWithNibName:@“ViewController”捆绑包:nil];self.window.rootViewController=self.ViewController;[self.window makeKeyAndVisible];返回YES;}知道我需要什么吗?对不起,我应该给你一个简短的答复。我想说的是,应用程序中的所有内容都用options:method-needto-go完成了启动-这都是为了Xib加载的好处。所以删除所有内容,除了
返回YES;
…另外,如果你有更多关于你的问题的信息,你应该编辑你的问题(向其添加更新没有问题),而不是试图将其全部压缩成评论…感谢您的帮助。我使用故事板将.xib的所有内容复制到一个新项目中,并只是复制了我的ViewController.h和.m文件,保留了普通的代理文件。现在运行良好,再次感谢您。我对这一点非常陌生,有点不知所措。这就是我所拥有的:-(BOOL)应用程序:(UIApplication*)应用程序使用选项完成启动:(NSDictionary*)启动选项{self.window=[[UIWindow alloc]initWithFrame:[[UIScreen mainScreen]bounds]];//在应用程序启动后覆盖自定义点。self.viewController=[[viewController alloc]initWithNibName:@“viewController”“bundle:nil];self.window.rootViewController=self.viewController;[self.window makeKeyAndVisible];返回YES;}”知道我需要什么吗?对不起,我应该给你一个简短的答复。我想说的是,应用程序中的所有内容都用options:method-needto-go完成了启动-这都是为了Xib加载的好处。所以删除所有内容,除了
返回YES;
…另外,如果你有更多关于你的问题的信息,你应该编辑你的问题(向其添加更新没有问题),而不是尝试将其全部压缩到注释中…感谢您的帮助。我使用故事板将.xib的所有内容复制到一个新项目中,并仅复制了我的ViewController.h和.m文件,保留了普通的委托文件。现在工作正常,再次感谢