使用xcassets中的imageNamed加载NSImage会在较旧的osx版本中崩溃

时间:2016-10-02 21:49:05

标签: xcode macos nsimage imagenamed

所以,我有一个xcassets,在很多应用程序之间共享。我在安装了MacOs Sierra的Mac Mini中使用Xcode8进行开发。如果我在开发机器中编译并运行,那就没有问题了。但是,当我尝试在OSX Mavericks的设备中运行它时,我遇到了崩溃。这是报告中的跟踪

(notify-send one && sleep 15 && notify-send two)&

如果我从xcassets中删除图片并将其包含在内,并单独列出"在应用程序的捆绑中 - 将其放到应用程序的项目导航器中 - 它加载得很好。但我想尽可能避免这种情况,因为只在一个xcassets中共享图像会更清晰。

任何想法或想法?提前谢谢。

1 个答案:

答案 0 :(得分:8)

我可以按照Apple为iOS 7设备提供的解决方法绕过此错误:

  

要解决此问题,请将部署目标更新为iOS 8.0或   更高,或将单个图像添加到至少具有的资产目录   在图像集中指定的五个属性,例如:scale(1x,   2x,3x)成语(添加iPad,iPhone和通用资产)方向(左   从右到右,宽度/高度等级(任何和紧凑等等)   (内存)(添加1 GB资产)图形(添加Metal 1v2资产)它   没有必要在代码中使用图像或添加所有这些   属性。 (27852391)

这是虚拟图像集的样子:

Dummy imageset