【发布时间】:2013-11-15 21:04:19
【问题描述】:
我正在我的应用程序中实现 FPPopover,它工作正常,直到我向应用程序委托添加一些代码以根据整个应用程序中的设备管理和显示正确的故事板。我添加的代码如下...
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
UIStoryboard *storyboard = [self getStoryboard];
UIViewController *initViewController = [storyboard instantiateViewControllerWithIdentifier:@"Init"];
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.window.rootViewController = initViewController;
[self.window makeKeyAndVisible];
sleep(3);
return YES;}
-(UIStoryboard*) getStoryboard {
UIStoryboard *storyBoard = nil;
if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPad) {
storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPad" bundle:nil];
}else{
if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPhone){
// The iOS device = iPhone or iPod Touch
CGSize iOSDeviceScreenSize = [[UIScreen mainScreen] bounds].size;
if (iOSDeviceScreenSize.height == 480){
// iPhone 3/4x
storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
}else if (iOSDeviceScreenSize.height == 568){
// iPhone 5 etc
storyBoard = [UIStoryboard storyboardWithName:@"Storyboard_iPhone_5" bundle:nil];
}
}
}
return storyBoard;}
如果我从我的 App 委托中删除所有这些代码,弹出框可以完美运行...但是如果我添加它,它就不起作用了...我不知道发生了什么。 有人可以帮忙吗?
【问题讨论】:
-
可能,您的故事板/initViewController 正在初始化为
nil。尝试在各自的初始化行之后添加NSLog(@"%@",storyboard);和NSLog(@"%@",initViewController);
标签: ios iphone show popover fppopover