首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用iPad创建iPhone故事板

如何使用iPad创建iPhone故事板
EN

Stack Overflow用户
提问于 2014-04-08 09:02:28
回答 1查看 186关注 0票数 1

嗨,伙计们,我有点小问题。所以我在我的项目中使用了三个故事板,其中有iPhone 4s的故事板/iPhone 5,我也为iPad创建了。因此,对于选择故事板,我使用以下代码:

代码语言:javascript
复制
UIStoryboard * mainStoryboard = nil ;   
CGRect screenBounds = [[UIScreen mainScreen] bounds];
if (screenBounds.size.height == 568) {
    mainStoryboard = [ UIStoryboard storyboardWithName : @ "iPhone5" bundle : nil ] ;

} else {
    mainStoryboard = [ UIStoryboard storyboardWithName : @ "iPhone4s" bundle : nil ] ;

}
self.window = [ [ UIWindow alloc ] initWithFrame : [ [ UIScreen mainScreen ] bounds ] ] ;
self.window.rootViewController = [ mainStoryboard instantiateInitialViewController ] ;
[ self.window makeKeyAndVisible ] ;

工作非常完美,但不适合iPad。在这段代码之后,我的iPad故事板没有看到。如何选择iPad故事板与所有这些故事板。我明白我的问题,但我找不到好的解决办法。它是如何创造的?谢谢。

我也没试过this...but什么都没有。

代码语言:javascript
复制
if ([[UIDevice currentDevice] userInterfaceIdiom] ==UIUserInterfaceIdiomPhone)
{
    UIStoryboard * mainStoryboard = nil ;

         CGRect screenBounds = [[UIScreen mainScreen] bounds];
           if (screenBounds.size.height == 568) {
          mainStoryboard = [ UIStoryboard storyboardWithName : @ "iPhone5" bundle : nil ] ;

          } else {
              mainStoryboard = [ UIStoryboard storyboardWithName : @ "iPhone4s" bundle : nil ] ;

          }

}
else
{
    UIStoryboard *appropriateStoryboard = [self storyboard];
    self.window.rootViewController = [appropriateStoryboard instantiateInitialViewController];
    return YES;
    - (UIStoryboard *)storyboard
    {
        NSString *storyboardName = @"iPadMyBoard";
        if ([self isPad]) {
            storyboardName = [storyboardName stringByAppendingString:@""];
        }
        return [UIStoryboard storyboardWithName:storyboardName bundle:nil];
}

    -(BOOL)isPad
    {
        return (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad);
    }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-08 09:23:19

您可以使用以下代码

代码语言:javascript
复制
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{    
    UIStoryboard *appropriateStoryboard = [self storyboard];
    self.window.rootViewController = [appropriateStoryboard instantiateInitialViewController];
    return YES;
}

- (UIStoryboard *)storyboard
{
    NSString *storyboardName;
    if ([self isPad])
    {
        storyboardName = @"iPadMyBoard";
    }
    else
    {
        if ([self isPhone5])
        {
            storyboardName = @"iPhone5";
        }
        else
        {
            storyboardName = @"iPhone4s";
        }
    }
    return [UIStoryboard storyboardWithName:storyboardName bundle:nil];
}

-(BOOL)isPad
{
    return (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad);
}

-(BOOL)isPhone5
{
    CGRect screenBounds = [[UIScreen mainScreen] bounds];
    if (screenBounds.size.height == 568){
        return YES;
    }
    return NO;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22932339

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档