30

我们有几个 Xcode 应用程序项目,我们正在升级所有项目以使用最新的 Xcode 5 功能,包括资产目录 ( .xcassets)。

我们所有的default(启动)图像已经包含状态栏的间距,我们希望将这些图像用于启动图像iOS 5,6iOS 7启动图像。此外,我们不想在项目中包含同一图像的多个副本。

我们的一个项目已正确设置为对这两个图像井集使用相同的图像。然而,这是偶然设置的。

除了Contents.json直接编辑文件(如果需要,这是最后的解决方法),我们如何使用资产目录的 Xcode GUI 编辑器来做到这一点?

我们已经尝试过的

1)将图像拖放到不同的位置......只需将图像移动到另一组

2) 将同一文件从 Finder 拖放到 Asset Catalog... 创建图像的新副本

option3) 按下( ) 拖放图像alt...创建图像的新副本

4

6 回答 6

8

您可以右键单击 .xcassets 文件并选择“在 Finder 中显示”。转到“Image.launchimage”文件夹并在文本编辑器中打开 Contents.json 文件。在这里您可以看到未分配的插槽不包含“文件名”。您可以手动添加它。例如更改以下内容:

{
    "orientation" : "landscape",
    "idiom" : "ipad",
    "extent" : "full-screen",
    "minimum-system-version" : "7.0",
    "scale" : "2x"
}

进入:

{
    "orientation" : "landscape",
    "idiom" : "ipad",
    "extent" : "full-screen",
    "minimum-system-version" : "7.0",
    "filename" : "Default-Landscape@2x~ipad.png",
    "scale" : "2x"
}

现在保护文件,瞧!

于 2013-10-04T09:50:50.230 回答
0

我通过使用构建脚本为每个目标复制正确的 xcassets 文件解决了这个问题。详情在这里

于 2013-11-29T20:05:45.897 回答
0

我想我找到了解决方案:只需将要用于 iOS 6 和 7 的默认图像拖到 iOS 6 存储桶中即可。您会收到关于没有仅适用于 iOS7 的图像的警告,但该构建适用于 iOS7 模拟器、iOS7 iPhone 和 iOS7 iPad。

于 2014-02-09T07:03:00.257 回答
0

就我而言,我正在使用可可豆荚。可可豆荚脚本Pods-resources.sh不知何故导致了这个问题。从脚本中删除资产部分解决了这个问题。

确保清理您的项目并删除派生数据文件夹。

要删除的部分可以在这里找到:

https://stackoverflow.com/a/21309102/832111

于 2014-06-04T14:35:16.167 回答
0

我通过删除旧的 xcasset 解决了这个问题,并通过使用不使用应用程序目录添加了新的 xcasset

于 2014-04-28T10:40:06.670 回答
0

我升级到 cocopods 0.37,问题就解决了。如果您使用 cocopods,那可能是它的错。

于 2015-05-21T13:48:24.050 回答