如何使用 Xcode 4.5 为 iPhone 4 和 iPhone 5 创建 xib

Posted

技术标签:

【中文标题】如何使用 Xcode 4.5 为 iPhone 4 和 iPhone 5 创建 xib【英文标题】:How can I create xibs for both iPhone 4 and iPhone 5 using Xcode 4.5 【发布时间】:2012-09-25 11:45:28 【问题描述】:

我已将部署目标设置为 ios 4.3 并使用 xib 创建视图控制器。但 XCode 4.5 只为 iPhone 5(4 英寸)创建 xib。如何为 iPhone 4 创建单独的 xib?

【问题讨论】:

我认为您不能(或不需要)为其他屏幕尺寸制作单独的 xib。见法赫里的回答。使视图可调整大小应该非常容易(特别是如果您想使用 SDK 6.0 中的新约束功能) 这个链接帮助你解决你的问题***.com/questions/13275144/… 【参考方案1】:

在视图属性检查器的“模拟指标”部分,您可以选择 3,5" 或 4" 尺寸。选择 3,5",并使您的视图和子视图可调整大小,iOS 会自动缩放您的视图以适应 iPhone 5 的屏幕。

【讨论】:

只有一个xib,它在6.0以下崩溃。我取消选中使用自动布局并停止崩溃。那么如果部署目标是 iOS 4.3,我不能使用 Autolayout? @Hitesh:您只能在 iOS 6+ 的部署目标中使用 Auto Layout(约束),因为这是 iOS 中的全新功能。 感谢您的回答对我的帮助最大。 我想知道,,, 在这里如何调整大小?在 IB 或代码中? 取决于您放置自动调整大小掩码的位置 :)【参考方案2】:

在您的 xib 中,选择控制器并在属性窗口中设置您想要保留的视图大小。

【讨论】:

【参考方案3】:

我也在寻找相同问题的解决方案。我有一组视图,里面有图像视图,现有图像在 iPhone 5 中看起来很糟糕。不幸的是,我们需要支持所有 4.3+ iOS 版本,我别无选择,只能缩放图像视图为两个不同的 iPhone 使用单独的图像。这是我以前做的,

    float height = 480.0f;
    NSString *imageName = @"image640x480";
    if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
    
        CGSize result = [[UIScreen mainScreen] bounds].size;
        height = result.height;
        imageName = @"image640x568";
    
    // Set the height of your image view to the height calculated above and use the imageName variable to load the correct image

【讨论】:

以上是关于如何使用 Xcode 4.5 为 iPhone 4 和 iPhone 5 创建 xib的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 4.5 与 iOs 6 在 iOs 4.3 中的问题

XCode 4.5 iOS 6.0 模拟器和旋转问题

xcode 4.5 启动图像奇怪的名称问题(现有项目)

单元测试目标不在Xcode 4.5上运行

在Xcode 4.5中使用ZXing库时,体系结构armv7的未定义符号

XCode 4.5 - 架构 armv7 的未定义符号