我将一个名为 heart.png 的全屏图像加载到 320x480 的 UIImageView 中。我创建了一个 640x960 版本并将其命名为 heart@2x.png。我还创建了一个 640x1136 版本并将其命名为 heart-568h@2x.png。
我在 Storyboard中使用 320x480 的 UIImageView 构建了一个 3.5" View 。我假设使用 4"屏幕设备会自动加载 heart-568h@2x.png 但事实似乎并非如此。我是否必须为 3.5"和 4"屏幕创建 2 个 Storyboard?
编辑
到目前为止,一切都在 IB 中完成,没有使用任何代码。这是我刚刚设置的示例项目:
最佳答案
你是对的。设备不会以区分常规和视网膜 (@2x) 的方式自动加载 568 图像(启动图像除外)。您将必须以编程方式检查,或使用单独的 Storyboard/NIB。
if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) {
CGSize screenSize = [[UIScreen mainScreen] bounds].size;
if(screenSize.height == 568) {
// ...
}
}
关于ios - Storyboard、Interface Builder 未加载 568h 图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13173317/