Images.xcassets不适用于通用应用程序Xcode 5,iOS 7中的特定设备

时间:2014-03-28 10:41:29

标签: ios7 xcode5

我正在将iOS 6通用应用程序(适用于iPhone和iPad)更新到iOS 7,我想使用Images.xcassets将图像存储在其中。

对于通用图像(如某些在iPhone和iPad上相同的按钮),此存储工作正常。但是对于特定于设备的图像,它无法正常工作,并且我在iPhone模拟器上遇到以下错误:

CUICatalog: Can't find rendition for name: search_next scale factor: 2 device idiom: 1 device subtype: 568
Could not load the "search_next" image referenced from a nib in the bundle with identifier "sk.company.app"

但图像在那里:

specific device assets

当我将通用图像添加到此资产时,它正在运行:

universal device asset

我在空白的应用程序中尝试过这一点并且它的工作非常好,所以我认为选项有问题,但我无法弄清楚在哪里。

我更多提示:当我在项目设置中将通用应用程序切换到仅iPhone应用程序时,第一个场景(资产中只有特定图像)正常工作。

3 个答案:

答案 0 :(得分:1)

对于Universal Application,始终使用Apple推荐的命名约定。例如,您有一个按钮图像,为iPhone和iPad设置图像,例如

<强> 按钮〜iphone.png Button@2x~iphone.png 和iPad 巴顿〜ipad.png Button@2x~ipad.png

如果你这样做,你就不会收到错误&#34; CUICatalog:找不到名字:&#34; 谢谢:)

答案 1 :(得分:0)

看起来它与CocoaPods有关。更新后,一切正常。

答案 2 :(得分:0)

解决方案在错误消息中给出:

  

&#34;无法加载&#39; search_next&#39;从笔尖引用的图像   捆绑......&#34;

如果您查看屏幕截图,您会看到图片被命名为&#34; search_next @ 2x -2 .png&#34;,其中应该命名为&# 34; search_next@2x.png" ;. &#34; -2&#34;当你在某处拖动另一张图片时可能已添加,而@ 2x版本已经存在。

如果你通过更新CocoaPods来解决它,这是一个库的问题,但解决方案与CocoaPods无关。