无意中从XCode项目中删除了xcassets文件
我想从图像集合中删除单个文件夹,但是,我设法将整个xcassets文件放入垃圾箱。
普通的“放回”方法是不可用的,只是拖动删除的文件夹到XCode产生一个错误:
“Images.xcassets”无法复制到“ProjectPear”,因为具有相同名称的项目已经存在。
要保存文件,请提供不同的名称,或移动或删除现有文件,然后重试。
我不确定这个集合在XCode项目中的位置,因为导航器没有显示任何内容,而且命令行也没有提示任何提示。 我怕搞乱project.pbxproj
文件,因为它可能比我的图像集合混杂得多。
编辑:将文件从垃圾箱拖回到Finder是成功的,但是,XCode导航器不再识别 – 或者在这种情况下仍然不能识别 – .cassetsets文件。 我不确定是否在.pbxproj文件中添加某些内容。
我只是自己做了这个,想出了如何快速解决这个问题。
-
转到Finder中的项目文件夹。 你应该会发现Images.xcassets文件夹还在那里。
-
将它移到像桌面之类的单独位置。 它仍然有所有的图像和json文件。
-
跳回Xcode并为图像创build一个新的资产目录。
File > New > File... > Resource > Asset Catalog
将其命名为Images 。
-
退出Xcode并返回到Finder。
-
将旧的 Images.xcassets中的文件夹复制到项目中新的 Images.xcassets目录中。
-
启动Xcode,你又回来了!
如果你没有完全删除它,你可以从Finder中将其拖回。 (右键点击你的项目并select“显示在Finder中”来检查)
如果完全消失,只需转到Cmd + N – > Resource并select资产目录。 然后,通过拖放或右键单击和“添加文件到…”来重新添加想象,并且应该很好。
希望有所帮助。
今天用Xcode Beta也有同样的问题,由于某种原因,我也无法创build一个新的资产目录。 这是在一个Watchkit扩展项目这是我做了什么来解决它:
- 在查找器中,我从我的应用程序中的另一个文件夹将现有的images.xcassets复制到我的桌面。
- 删除了这个文件夹的内容。
- 将已删除的(单个)图像资产从垃圾箱复制到文件夹中(在我的桌面上)。
- 将整个文件夹拖到XCode中的项目中。
修复它,一切都恢复正常。
如果您完全删除它,那么这些步骤也是获得新的Images.xcassets:
- 在导航器中,点击该项目。
- 转到:文件>新build>文件>添加资产目录>将其命名。
- 在其中添加AppIcon和LaunchImage:
转到项目设置:
- 在常规选项卡中,向下滑动至应用程序图标并启动图像
- 点击应用图标来源旁边的选项,然后select使用资产目录
- 将popup一个窗口 – select新Images.xcassets文件的名称,然后单击迁移。
- 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中重新打开项目文件。 你现在都准备好了