gpt4 book ai didi

xcode 4.5 如何在启动时选择 Storyboard

转载 作者:行者123 更新时间:2023-12-03 07:02:55 25 4
gpt4 key购买 nike

尝试让我的应用同时兼容 iPhone 5 和 iPhone 4/4s。我尝试了“AutoLayout”,但似乎不适用于我的应用程序,还了解到 iOS 5 不支持它。 AutoLayout 在具有 UIScrollview 和在代码中重新调整大小的 UIPicker 的 View Controller 上特别失败。拥有两个 Storyboard,一个用于 4 英寸,一个用于 3.5 英寸,似乎是一种可行的方法。

两个 Storyboard aproch 似乎是我的解决方案。所以这给我留下了两个问题;

  1. 检测是否为 4/4s/5 的代码应该放在哪里?我假设在 appDelegate.m 的 didFinishLaunchingWithOptions 方法中

  2. 如何更改“主 Storyboard”?

最佳答案

这是一个很好的问题。

你需要做的是,

  1. 选择当前的 4/4 Storyboard,转到"file",复制,然后为其指定一个 iPhone 5 特定名称。确保选中 Target 和您的应用名称。

  2. 接下来,您必须在 Storyboard中选择场景,并在属性检查器中将大小更改为 Retina 4 全屏。这允许您重新排列此显示的所有内容。

  3. 最后在应用程序 didFinishLaunchingWithOptions 中粘贴以下代码以及您为 4 英寸 Storyboard指定的 Storyboard名称。

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    {
    if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone){
    UIStoryboard *storyBoard;

    CGSize result = [[UIScreen mainScreen] bounds].size;
    CGFloat scale = [UIScreen mainScreen].scale;
    result = CGSizeMake(result.width * scale, result.height * scale);

    if(result.height == 1136){
    storyBoard = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone_5" bundle:nil];
    UIViewController *initViewController = [storyBoard instantiateInitialViewController];
    [self.window setRootViewController:initViewController];
    }
    }

    return YES;
    }
<小时/>

如果有人不明白如何执行第 1 步,请按以下步骤操作。

  1. 转到项目目录并复制粘贴 MainStoryboard.storyboard 并将新 Storyboard重命名为 MainStoryboard5.storyboard

  2. 右键单击项目并单击将文件添加到...,将这个新的 StoryboardMainStoryboard5.storyboard添加到项目中(在Xcode中)

  3. 现在我们在 xcode 中有两个 Storyboard。

提示

完成上述所有操作后,您可能必须使用“产品 > 清洁”才能发挥作用。

关于xcode 4.5 如何在启动时选择 Storyboard,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12536689/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com