从Xcode项目中意外删除了xcassets文件


80

我想从图像集合中删除一个文件夹,但是,我设法将整个xcassets文件扔进了垃圾箱。

常规的“回退”方法不可用,只需将已删除的文件夹拖动到Xcode就会产生错误:

无法将“ Images.xcassets”复制到“ ProjectPear”,因为已经存在相同名称的项目。
要保存文件,请提供其他名称,或者移开或删除现有文件,然后重试。

我不确定该集合在Xcode项目中的位置,因为导航器似乎未显示任何内容,并且命令行也未删除任何提示。我害怕弄乱该project.pbxproj文件,因为它可能会比我的图像集合更加混乱。

编辑:成功将文件从“废纸rash”拖回Finder中,但是,Xcode导航器不再识别-。在这种情况下,仍然无法识别-.xcassets文件。我不确定是否要在.pbxproj文件中添加一些内容。


只需执行一个Command + Z(撤消)。为我节省了很多时间:)
Gokul 2015年

Answers:


215

我自己做了这个,并想出了如何快速解决此问题。

  1. 转到Finder中的项目文件夹。您应该发现文件夹Images.xcassets仍然存在。

  2. 将其移动到单独的位置,例如桌面或其他位置。它仍然具有所有图像和json文件。

  3. 返回Xcode并为图像创建一个新的资产目录。

    File > New > File... > Resource > Asset Catalog

    将其命名为Images

  4. 退出Xcode,然后返回到Finder。

  5. 将文件夹从旧的 Images.xcassets中复制到项目中的 Images.xcassets目录中。

  6. 启动Xcode,您就重新营业了!


哇,我只是无意中删除了自己的Assets.xcassets,它仍然可以正常工作,但是无法正常工作,所以我无法添加新图像...我到处都找不到该文件夹
Jesus Rodriguez

@JesusAdolfoRodriguez,如果意外删除资产目录时选择了“移至垃圾箱”,则应该可以在垃圾箱中找到该文件夹​​,除非您当然已经清空了垃圾箱。
肖恩·布莱尼

1
很好,为我工作。仅供参考,对于意外删除此文件的任何人,我认为这是因为我们试图在Assets文件夹中进行Cmd + Delete文件删除。相反,只需按Delete键即可删除文件
Merricat

23

如果您没有将其完全删除,则可以将其从Finder中拖回。(右键单击您的项目,然后选择“在Finder中显示”以进行检查)

如果完全消失了,您只需转到Cmd + N-> Resource并选择Asset Catalog。然后,您可以通过拖放或右键单击和“将文件添加到...”来重新添加您的图像,应该很好。

希望能有所帮助。


1
谢谢,我设法将所有内容拖回文件夹,但是导航器未显示文件。有没有刷新导航器(或类似方法)的方法?
Aeveus 2013年

好吧,Cmd + W和重新打开曾经有帮助,但是值得一试。如果您发现该文件在Finder中,虽然,只需将他们回来的这应该是它
芬兰人改搭

很好地将文件拖回原处,只是导航器不再识别.xcassets文件,因为它根本不可见。我可以在Finder中找到它,但是XCode导航器不相信我。
Aeveus 2013年

这听起来可能很愚蠢,但是对我来说,重新启动XCode并清理项目几乎常常可以完成这项工作
Finn

此刻,我有点沮丧,所以我欢迎所有答案。除了重新启动XCode,我已经尝试过重建和清理项目。没有帮助。:(
Aeveus 2013年

3

今天,Xcode Beta遇到了同样的问题,由于某种原因,我也无法创建新的资产目录。这是在Watchkit扩展项目上的解决方法:

  1. 在finder中,我将现有的images.xcassets从应用程序的另一个文件夹复制到了桌面。
  2. 删除了此文件夹的内容。
  3. 从我的垃圾箱中将已删除的(单个)图像资产复制到该文件夹​​中(在我的桌面上)。
  4. 将整个文件夹拖到XCode中的项目中。

这样就解决了,一切恢复正常。


3

我不小心删除了对资产文件夹的引用,以使其在Xcode中不再可见。但是当我从查找程序中检查时,资产文件夹仍在项目文件夹中。

如果这样做,只需打开Xcode中的文件菜单(从当前项目中),然后在最顶部即可将(现有)文件添加到该项目中(再次返回)-它显示“将文件添加到...”。


或只是从Finder拖放
djdance,

2

如果已将其完全删除,那么以下是获取新Images.xcassets的步骤:

  1. 在导航器中,单击项目。
  2. 转到:文件>新建>文件>添加资产目录>命名。
  3. 要在其中添加AppIcon和LaunchImage:

转到项目设置:

  1. 在常规标签中,向下滑动到应用程序图标并启动图像
  2. 单击“应用程序图标源”旁边的选项,然后选择“使用资产目录”
  3. 将弹出一个窗口,选择新的Images.xcassets文件的名称,然后单击“迁移”。
  4. 选择还添加启动图像。现在,您可以在项目中看到新的Images.xcassets :)。

2

通常,文件的引用已从Xcode中删除,原始文件夹仍存在于项目目录中。

右键单击您的项目文件夹,单击“将文件添加到‘项目’”,发现在你的项目资产,然后点击添加,即可大功告成

在此处输入图片说明


1

右键单击项目中的任何内容,然后单击“在Finder中显示”。在查找器中的项目文件夹中四处搜索,您将找到它。我现在不在Mac上,或者直接为您提供指向默认.xcassets文件夹位置的更直接路径。

而且无论如何,如果由于“已经存在相同名称的项目”而无法在该位置复制/创建“新”文件夹,则意味着您实际上并未删除该文件夹。您刚刚删除了项目在XCode中对该文件夹的引用。硬盘驱动器上的文件夹没有任何位置。


啊,谢谢,我找到了该文件夹,但是它似乎缺少了大部分文件。您是否会知道其余是否可检索?
Aeveus 2013年

我不确定。如果这是您项目中的东西,但现在不在,那么它要么在Finder中项目文件夹中的某个地方,要么可能已移至垃圾箱。
nhgrif 2013年

1

[我知道这是@Aeveus的一个非常老的问题]所有答案都涉及再次重新添加资产。如果您无法撤消,则原始描述中缺少的这一步是:

在您的project.pbxproj文件中,将有如下对资产的引用:

45AE4E781C183FBA0051674F /* Assets.xcassets in Resources */ = {... 

假设您具有源代码控制系统(如git等),则可以还原到project.pbxproj文件的原始内容,或者手动重新添加已删除的行,然后以xcode重新打开项目文件。你们都准备好了。


0

我遇到了同样的问题,我遵循了Jason的上述步骤,但是最终我得到了红色的Image.xassets,因此为了找到我的图像,我必须单击Image.xassets,然后在右上角放置我的image.xassets文件夹的绝对路径,它解决了我的问题。希望能帮助到你!

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.