所以我创建了一个资产目录,其中包含四个位置:两个用于iPhone,另外两个用于iPad。现在我拖放我的图像到相应的位置。Xcode资产目录:每张图片只有一个副本
我的问题:假设我对iPhone @ 2x和iPad @ 1x使用相同的图像。但是,Xcode会创建图像的副本,尽管完全相同的图像已经存在。
所以我试图通过this answer手动解决这个问题。我打开.imageset文件夹,并编辑“文件名”中的Contents.json文件是这样的:(我也该文件夹中删除重复的图像)
{
"images" : [
{
"idiom" : "iphone",
"scale" : "1x"
"filename" : "[email protected]"
},
{
"idiom" : "iphone",
"scale" : "2x",
"filename" : "[email protected]"
},
{
"idiom" : "ipad",
"scale" : "1x",
"filename" : "[email protected]"
},
{
"idiom" : "ipad",
"scale" : "2x",
"filename" : "[email protected]"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
构建我看看里面后。应用程序文件以及包含Xcode资产目录的Assets.car文件。
Assets.car文件的文件大小似乎比我预期的大。就好像我删除的重复图像在构建过程中被重新添加。
要看到,如果这是真的,我改变了Contents.json每一个“文件名”我@ 4倍的图像:
{
"images" : [
{
"idiom" : "iphone",
"scale" : "1x"
"filename" : "[email protected]"
},
{
"idiom" : "iphone",
"scale" : "2x",
"filename" : "[email protected]"
},
{
"idiom" : "ipad",
"scale" : "1x",
"filename" : "[email protected]"
},
{
"idiom" : "ipad",
"scale" : "2x",
"filename" : "[email protected]"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
构建后,我检查了文件大小FO的Assets.car。它比以前大得多。大约是“[email protected]”大小的四倍 - 尽管在我的.imageset文件夹中,只有一个“[email protected]”。所以我假设Xcode在构建过程中添加了该映像的三个副本。
有谁知道如何阻止Xcode添加这些不必要的副本?如果您的应用包含许多资产目录,应用尺寸可能会显着增加...
在此先感谢您的帮助!
刚刚遇到同样的问题,您是否找到了一些解决方法? – Mikhail