Случайно удаленный файл xcassets из проекта Xcode

Я хотел удалить одну папку из коллекции изображений, однако мне каким-то образом удалось выбросить весь файл xcassets в корзину.

Обычный метод «Вернуть обратно» недоступен, и простое перетаскивание удаленной папки в Xcode приводит к ошибке:

«Images.xcassets» не удалось скопировать в «ProjectPear», потому что элемент с таким именем уже существует.
Чтобы сохранить файл, либо укажите другое имя, либо переместите в сторону или удалите существующий файл и повторите попытку.

Я не уверен, где эта коллекция находится в моем проекте Xcode, поскольку навигатор, похоже, ничего не показывает, и командная строка также не отбрасывает никаких подсказок. Боюсь возиться с файлом project.pbxproj, так как он может перепутать гораздо больше, чем просто моя коллекция изображений.

Изменить: перетаскивание файлов обратно в Finder из корзины было успешным, однако навигатор Xcode больше не распознает - или, в данном случае, все еще не распознает - файл .xcassets. Я не уверен, нужно ли что-то добавлять в файл .pbxproj.


person Aeveus    schedule 07.12.2013    source источник
comment
Просто сделайте одну Command + Z (Отменить). Сэкономил мне много времени :)   -  person Gokul    schedule 28.05.2015


Ответы (10)


Я просто сделал это сам и понял, как быстро решить проблему.

  1. Перейдите в папку проекта в Finder. Вы должны обнаружить, что папка Images.xcassets все еще существует.

  2. Переместите его в другое место, например на Рабочий стол или что-то в этом роде. В нем все еще есть все изображения и файлы json.

  3. Вернитесь в Xcode и создайте новый каталог ресурсов для изображений.

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

    Назовите его Изображения.

  4. Закройте Xcode и вернитесь в Finder.

  5. Скопируйте папки из вашего старого Images.xcassets в новый Images.xcassets вашего проекта.

  6. Запустите Xcode, и вы снова в деле!

person Jason Barker    schedule 18.01.2014
comment
Вау, я просто случайно удалил свой Assets.xcassets, и он по-прежнему работает, но это не работает, поэтому я не могу добавлять новые изображения ... Я безуспешно искал папку везде - person Jesus Rodriguez; 28.03.2016
comment
@JesusAdolfoRodriguez, если вы выбрали «Переместить в корзину», когда случайно удалили каталог активов, вы сможете найти папку в корзине, если, конечно, вы уже не очистили корзину. - person Sean Blaney; 17.05.2016
comment
Хорошо, у меня сработало. FYI для тех, кто случайно удалил это, я думаю, это потому, что мы пытались Cmd + Удалить файл, находясь внутри папки Assets. Вместо этого просто нажмите Удалить, чтобы удалить файл. - person Merricat; 27.04.2019

Если вы не удалили его полностью, вы можете просто перетащить его обратно из Finder. (Щелкните правой кнопкой мыши свой проект и выберите «Показать в Finder», чтобы проверить)

Если все прошло полностью, просто перейдите Cmd + N -> Resource и выберите Asset Catalog. Затем вы повторно добавляете свои изображения с помощью перетаскивания или щелчка правой кнопкой мыши и «Добавить файлы в ...», и все должно быть в порядке.

Надеюсь, это поможет.

person Finn Gaida    schedule 07.12.2013
comment
Спасибо, все удалось перетащить обратно в папку, но навигатор не показывает файл. Есть ли способ обновить навигатор (или что-то подобное)? - person Aeveus; 07.12.2013
comment
Что ж, Cmd + W и повторное открытие когда-либо помогали, но попробовать стоит. Если вы нашли файлы в Finder, просто перетащите их обратно, и все должно быть. - person Finn Gaida; 07.12.2013
comment
Ну, перетаскивание файлов обратно прошло нормально, просто навигатор больше не распознает файл .xcassets, так как он просто не виден. Я могу найти его в Finder, но навигатор XCode мне не верит. - person Aeveus; 07.12.2013
comment
Это может показаться глупым, но для меня перезапуск XCode и очистка проекта пугающе часто выполняли свою работу. - person Finn Gaida; 07.12.2013
comment
На данный момент я немного разочарован, поэтому приветствую все ответы. Я уже пробовал перестроить и очистить проект в дополнение к перезапуску XCode; не помогло. :( - person Aeveus; 07.12.2013
comment
Согласно этому (stackoverflow.com/questions/12454430/), может помочь прикосновение к каталогу. Я действительно не могу придумать никакой другой возможности, кроме удаления xcasset и повторного добавления всех изображений в новый ... - person Finn Gaida; 07.12.2013
comment
Спасибо за предложение, я запустил touch в корневом каталоге проекта, в каталоге, содержащем каталог .xcassets, сам каталог .xcassets и каталог .xcodeproj, но безрезультатно. Возможно, мне придется набраться решимости и начать вручную заново добавлять все изображения ... - person Aeveus; 07.12.2013

У меня была такая же проблема сегодня с Xcode Beta, я также по какой-то причине не мог создать новый каталог активов. Это было в рамках проекта расширения Watchkit Вот что я сделал, чтобы решить эту проблему:

  1. В Finder я скопировал существующий файл images.xcassets из другой папки в моем приложении на свой рабочий стол.
  2. Удалил содержимое этой папки.
  3. Скопировал удаленный (единственный) объект изображения из корзины в папку (на моем рабочем столе).
  4. Перетащил всю папку в свой проект в XCode.

Это исправило это, и все вернулось в норму.

person Shachar    schedule 05.01.2015

Если вы удалили его полностью, выполните следующие действия, чтобы получить новый файл Images.xcassets:

  1. В навигаторе щелкните проект.
  2. Перейдите в: Файл> Создать> Файл> Добавить каталог активов> Назовите его.
  3. Чтобы добавить в него AppIcon и LaunchImage:

Перейдите в настройки проекта:

  1. На вкладке «Общие» прокрутите вниз до значков приложений и изображений для запуска.
  2. Щелкните опцию рядом с источником значков приложений и выберите Использовать каталоги активов.
  3. В появившемся окне выберите имя нового файла Images.xcassets и нажмите «Перенести».
  4. Выберите Также добавить LaunchImage. Теперь вы можете увидеть новые кассеты Images.xcasset в вашем проекте :).
person Nupur Sharma    schedule 24.04.2016

Я случайно удалил ссылку на папку с активами, чтобы она больше не была видна в Xcode. Но когда я проверил через искатель, папка с активами все еще была в папке проекта.

Если вы это сделали, просто откройте меню файлов в Xcode (из вашего текущего проекта) и в самом верху вы можете добавить (существующие) файлы в этот самый проект (снова) - там написано «Добавить файлы в ...»

person Bella    schedule 21.09.2016
comment
или просто перетащите из Finder - person djdance; 02.03.2018

Обычно ссылка на файл удаляется из Xcode, исходная папка все еще существует в каталоге проекта.

Щелкните правой кнопкой мыши папку проекта, нажмите «Добавить файлы в« свой проект »», найдите в своем проекте «Активы» и нажмите Добавить, и все готово.

введите описание изображения здесь

person Ajji    schedule 28.08.2018

Щелкните правой кнопкой мыши что-либо в своем проекте и выберите «Показать в Finder». Поищите немного в папке проекта в поисковике, и вы ее найдете. Я сейчас не на Mac, иначе я бы дал вам более прямой путь прямо к папке по умолчанию .xcassets.

В любом случае, если вы не можете скопировать / создать «новую» папку в этом месте, потому что «элемент с таким именем уже существует», то это означает, что вы фактически не удалили папку. Вы только что удалили ссылки своего проекта на эту папку в XCode. Папка на жестком диске никуда не делась.

person nhgrif    schedule 07.12.2013
comment
Ах, спасибо, я нашел папку, но похоже, что в ней отсутствует большинство файлов. Вы бы случайно не узнали, можно ли восстановить остальное? - person Aeveus; 07.12.2013
comment
Я не уверен. Если это что-то, что было в вашем проекте, а сейчас нет, то оно либо где-то в папке вашего проекта в Finder, либо, возможно, было перемещено в корзину. - person nhgrif; 07.12.2013

[Я понимаю, что это очень старый вопрос от вас, @Aeveus] Все ответы говорят о повторном добавлении ресурсов снова. Учитывая, что отменить нельзя, в исходном описании отсутствует один шаг:

В вашем файле project.pbxproj были бы ссылки на активы, как показано ниже:

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

Предполагая, что у вас есть система управления исходным кодом (git и т. Д.), Вы можете вернуться к исходному содержимому файла project.pbxproj или вручную просто повторно добавить удаленные строки и повторно открыть файл проекта в xcode. Теперь все готово.

person Jey    schedule 31.05.2017

У меня была такая же проблема, и я выполнил шаги, описанные выше от Джейсона, но, наконец, я получил Image.xassets красного цвета, поэтому, чтобы найти свои изображения, мне пришлось щелкнуть Image.xassets, а затем в правом верхнем углу поставить абсолютный путь к моей папке image.xassets, и это устранило мою проблему. Надеюсь, поможет!

person Albeis    schedule 05.02.2016

У меня такая же проблема. Откройте свой проект XCode. Просто зайдите в Файл - ›Добавить файлы в ... (ваш проект) -› Assets.xcassets, и все готово!

person Raunak Priya    schedule 20.01.2021