【发布时间】:2014-11-23 06:38:57
【问题描述】:
我创建了 5 个额外的故事板,并删除了主故事板。这是因为我想为 iPhone 和 iPad 提供 5 个独立的故事板,以匹配 5 种不同的屏幕尺寸。到目前为止,我有一个用于 iPhone 3.5 英寸、一个用于 iPhone 4 英寸、一个用于 iPhone 4.7 英寸、一个用于 iPhone 5.5 英寸和一个用于 iPad。我已经把下面的代码链接起来并让它工作。但是,当您尝试构建项目时它不起作用。没有错误,但假设我进入 iPhone 3.5 英寸情节提要并添加 UIViewController 和按钮或标签,然后当您构建项目时,它会进入您的启动屏幕,然后它不会从那里做任何事情。我已将开始箭头放在 UIViewController 中,但除了启动屏幕之外,我什么也找不到。我在所有的故事板和他们的模拟器上都试过这个。我想知道我是否遗漏了代码中的某些内容,但我不确定。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
UIStoryboard *storyboard = nil;
if ([[UIDevice currentDevice] userInterfaceIdiom] ==UIUserInterfaceIdiomPad) {
storyboard = [UIStoryboard storyboardWithName:@"Storyboard_iPad" bundle:nil];//iPad
} else {
CGSize screenSize = [[UIScreen mainScreen] bounds].size;
if (screenSize.height == 480){
storyboard = [UIStoryboard storyboardWithName:@"Storyboard_iPhone4S" bundle:nil];//iPhone 3.5inch
} else
if (screenSize.height == 568){
storyboard = [UIStoryboard storyboardWithName:@"Storyboard_iPhone5/5C/5S" bundle:nil];//iPhone 4inch
}
else
{ if (screenSize.height == 667){
storyboard = [UIStoryboard storyboardWithName:@"Storyboard_iPhone6" bundle:nil];//iPhone 4.7inch
} else
if (screenSize.height == 736){
storyboard = [UIStoryboard storyboardWithName:@"Storyboard_iPhone6Plus" bundle:nil];//iPhone 5.5inch
} else
//default storyboard
storyboard = [UIStoryboard storyboardWithName:@"Main.Storyboard" bundle:nil];
}
}
self.window.rootViewController = [storyboard instantiateInitialViewController];
[self.window makeKeyAndVisible];
return YES;
}
【问题讨论】:
标签: ios objective-c xcode