【发布时间】:2023-04-03 08:18:01
【问题描述】:
我有 iPhone 5 和 iPhone 4 的视网膜图像。唯一的区别是图像的高度,分辨率是相同的。
当我指定 iPhone 4 图像时,我执行 myImage@2x.png,而对于 iPhone 5,我执行 myImageh@2x.png
然后在代码中
if (iPhone_5)
... imageNamed:@"myImageh@2x.png"];
else
... imageNamed:@"myImage@2x.png"];
问题:这在 iOS 模拟器上效果很好,但是在我的实际 iPhone 5 上,图像被放大到两倍大小。当我做if (iphone_5) ... imageNamed:@"myImage.png"] 时,它在真正的 iPhone 5 上运行良好,但模拟器抱怨它找不到图像文件。
这样做的正确方法是什么?
编辑:我忘了说我的图像在纹理图集中,因为这是用于 spritekit 游戏的。这有什么改变吗?
【问题讨论】:
-
我相信你应该在你的代码中使用 myImage.png (没有@2x)。这在过去对我有用。您是否尝试过更改 iPhone 模拟器的大小?也许要做一个测试,将@2x 设为纯蓝色,另一个设为纯红色,这样您就可以看到在哪种情况下正在加载哪个文件。
标签: ios objective-c sprite-kit