无意中从XCode项目中删除了xcassets文件

我想从图像集合中删除单个文件夹,但是,我设法将整个xcassets文件放入垃圾箱。

普通的“放回”方法是不可用的,只是拖动删除的文件夹到XCode产生一个错误:

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

我不确定这个集合在XCode项目中的位置,因为导航器没有显示任何内容,而且命令行也没有提示任何提示。 我怕搞乱project.pbxproj文件,因为它可能比我的图像集合混杂得多。

编辑:将文件从垃圾箱拖回到Finder是成功的,但是,XCode导航器不再识别 – 或者在这种情况下仍然不能识别 – .cassetsets文件。 我不确定是否在.pbxproj文件中添加某些内容。

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

  1. 转到Finder中的项目文件夹。 你应该会发现Images.xcassets文件夹还在那里。

  2. 将它移到像桌面之类的单独位置。 它仍然有所有的图像和json文件。

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

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

    将其命名为Images

  4. 退出Xcode并返回到Finder。

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

  6. 启动Xcode,你又回来了!

如果你没有完全删除它,你可以从Finder中将其拖回。 (右键点击你的项目并select“显示在Finder中”来检查)

如果完全消失,只需转到Cmd + N – > Resource并select资产目录。 然后,通过拖放或右键单击和“添加文件到…”来重新添加想象,并且应该很好。

希望有所帮助。

今天用Xcode Beta也有同样的问题,由于某种原因,我也无法创build一个新的资产目录。 这是在一个Watchkit扩展项目这是我做了什么来解决它:

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

修复它,一切都恢复正常。

如果您完全删除它,那么这些步骤也是获得新的Images.xcassets:

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

转到项目设置:

  1. 在常规选项卡中,向下滑动至应用程序图标并启动图像
  2. 点击应用图标来源旁边的选项,然后select使用资产目录
  3. 将popup一个窗口 – select新Images.xcassets文件的名称,然后单击迁移。
  4. select另外添加LaunchImage。 现在,您可以在项目中看到新的Images.xcassets :)。

右键单击项目中的任何内容,然后单击“在Finder中显示”。 在你的项目文件夹中search一下,你会发现它。 我现在不是在Mac上,或者我会给你一个更直接的path直接到默认的.xcassets文件夹位置。

无论如何,如果您无法在该位置复制/创build“新”文件夹,因为“一个同名的项目已经存在”,那么这意味着您并没有真正删除该文件夹。 您刚刚删除了项目对XCode中该文件夹的引用。 硬盘上的文件夹没有去任何地方。

我不小心删除了对资产文件夹的引用,以至于它在Xcode中不再可见。 但是当我从查找器检查,资产文件夹仍然在项目文件夹。

如果你这样做,只需打开Xcode中的文件菜单(从当前项目中),并在最上面,您可以添加(现有)文件到该项目(再次) – 它说“添加文件到…”

我有同样的问题,我已经按照上面的步骤从杰森,但最后我得到了红色的Image.xassets,所以为了find我的图像,我不得不点击Image.xassets,然后在右上angular把绝对path到我的image.xassets文件夹,它解决了我的问题。 希望能帮助到你!

[我知道这是来自你@Aeveus的一个非常古老的问题]所有的答案都是关于重新添加资源的。 鉴于您无法撤消,原始描述中缺less的一个步骤是:

在你的project.pbxproj文件中,会有如下资源的引用:

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

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