iPhone 4"屏幕与xcassets没有拉正确的图像

Joe*_*ell 11 iphone xcode ios ios7 xcode5

我正在尝试使用Images.xcassets实现我正在进行的项目.根据我的理解,我可以将不同设备的所有不同大小的图像放在那里,然后调用[UIImage imageNamed:@"name_of_image_set"],它将为我正在处理的设备返回正确的图像.

除了带有4英寸屏幕的iPhone 5/5s/5c之外,它似乎正在为所有内容提供正确的图像.对于该屏幕尺寸,它为我提供了带有3.5英寸屏幕的@ 2x iPhone的图像.

Images.xcassets中配置的图像

这是包含在图像文件夹中的json.

{
  "images" : [
    {
      "idiom" : "iphone",
      "scale" : "1x",
      "filename" : "bg.png"
    },
    {
      "idiom" : "iphone",
      "scale" : "2x",
      "filename" : "bg@2x.png"
    },
    {
      "idiom" : "iphone",
      "filename" : "bg-568h@2x.png",
      "subtype" : "retina4",
      "scale" : "2x"
    },
    {
      "idiom" : "ipad",
      "scale" : "1x",
      "filename" : "bg~ipad.png"
    },
    {
      "idiom" : "ipad",
      "scale" : "2x",
      "filename" : "bg@2x~ipad.png"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}
Run Code Online (Sandbox Code Playgroud)

一切似乎都井然有序,我只是误解了xcassets应该如何运作?

谢谢

乔尔贝尔

ale*_*0xB 4

我遇到了这个问题,问题似乎是针对低于 7.0 的 iOS 版本。对我来说,解决方案是创建一个单独的图像集,其中包含单个 @2x 图像,并通过在代码中检测 iPhone 屏幕尺寸以编程方式实例化正确的图像就像这里做的那样

相关: 为什么我的资产目录不返回 R4 图像?