在 Xcode 我有这样的:
在MyViewController.m
我正在加载图像时,它很好地在需要时加载了@2x(在视网膜上)
tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"emptyList.png"]];
我想添加另一个只能在 iPhone 5 的 4" 屏幕上加载的文件。这可能吗?我该怎么做?
这个问题不是很清楚,但我假设您要问的是:iPhone 5 特定图像的命名约定是什么?
我们已经知道我们可以使用以下方法定位 iPad/iPhone 和这些设备的视网膜/标准显示器:
.png
@2x.png
~iphone.png
~ipad.png
等等
好吧,关于 iPhone 5 特定图像的问题已经在 Apple Developer Forums 上进行了详细讨论,很明显没有办法做到这一点。
值得注意的是,一个线索是必须命名触发 4" 兼容应用程序的 Default.png 文件,Default-568h@2x.png
这引发了许多开发人员认为添加后缀“-568h@2x.png”是可行的方法。事实并非如此。你可以在 Apple Developer Forums 上找到此讨论。
通常人们将此作为一种解决方案,希望能适应更大的屏幕和更大的图像。但是,您应该实现 iOS 6 的AutoLayout功能。请记住,iPhone 5 的操作系统最低版本为 iOS 6,否则您也可以使用弹簧和支柱实现布局。
这应该足以缩放到更大的屏幕。如果您希望为更大的屏幕提供完全不同的布局,您可以检测屏幕尺寸并进行相应调整。您还可以在 Xcode 中指定一个不同的 nib 文件以在 4" 屏幕上使用。希望这会有所帮助。
Apple 开发者论坛上有关此线程的更多信息。