Не удалось загрузить изображение, на которое ссылается перо в пакете, работающем на устройстве - PullRequest
63 голосов
/ 31 января 2011
SplitView[1290:307] Could not load the "canary04.png" image referenced from a nib in the bundle with identifier "xx.co.mycompany.ipad.SplitView"

Я получаю ошибку только при запуске на устройстве. В симуляторе нет проблем с запуском.

Я использую изображение непосредственно в конструкторе интерфейсов с UIImageView.

РЕДАКТИРОВАТЬ: я добавил другое изображение в другое перо, и это без проблем работает.

У кого-нибудь есть идеи?

Ответы [ 34 ]

130 голосов
/ 30 апреля 2011

Возможно, он не добавлен к вашей цели, и в XCode 4 вы можете сделать это следующим образом:

  • В представлении проекта щелкните название проекта
  • Выберите цель и перейдите на вкладку «Фазы сборки»
  • Перетащите файл изображения в раздел «Копирование ресурсов»

Это исправило это для меня.

28 голосов
/ 01 февраля 2011

Файловая система на устройствах iOS чувствительна к регистру, поэтому вполне возможно, что это проблема с регистром.(Mac OS X обычно не учитывает регистр, поэтому вы не видели этой проблемы в симуляторе.)

Поэтому убедитесь, что в коде используется тот же регистр, что и в самом имени файла.

20 голосов
/ 31 января 2011

У вас есть изображение в указанной папке в XCode (синяя папка)? Если это так, вы должны включить имя папки в путь к изображению, что-то вроде «Images / canary04.png»

14 голосов
/ 17 октября 2013

Простой способ

1 Просто выполните команду grep в командной оболочке, чтобы найти строку указанного изображения:

grep -R 'canary04.png' YourMainDirectoryFolder/*

2 Это даст вам (например) вывод, подобный этому:

YourProject/en.lproj/YourViewController.xib: 

<textField borderStyle="roundedRect" background="canary04.png" id="19">

3 Теперь вы знаете, какой файл пера и какой это элемент. Просто зайдите в файл и удалите ссылку.

8 голосов
/ 18 апреля 2015
  1. Удалить синюю папку, в которой находится изображение.
  2. Импортируйте снова и выберите «Копировать элементы при необходимости».
  3. Выберите «Создать группы», а НЕ папки
5 голосов
/ 14 января 2014

Вы можете сделать это, чтобы проверить это с вашей раскадровки или кончика.Откройте его как исходный код:

enter image description here

Затем «найдите» имя изображения в нем, посмотрите, существует ли оно в вашем проекте, но уже недействительно, возможно, вы удалили или изменили его имяи теперь это кажется недействительным.

enter image description here

5 голосов
/ 29 августа 2013

Сохранить изображение как PNG-24.У меня работает

4 голосов
/ 07 сентября 2012

У меня была эта проблема при обновлении до Xcode 4.4.1. Я обнаружил, что хотя я удалил изображения (и соответствующие кнопки и т. Д.) В раскадровках, они все еще упоминались в файлах раскадровки (в поле tabBarItems). Я вручную закомментировал их (), Product -> Clean, и больше не получал ошибок.

Я знал, что в раскадровке должны быть фиктивные ссылки, так как ранее я удалил свой TabBar, и текущее приложение работало без проблем, только с раздражающими сообщениями в консоли.

4 голосов
/ 31 января 2011

Вы включили файл в цель?Щелкните правой кнопкой мыши на вашей цели в XCode, выберите «Информация» и выберите группу «Цели» в верхней части.Убедитесь, что ваши намеченные цели (ы) проверены.

Удачи.

РЕДАКТИРОВАТЬ: Текст выше должен был прочитать правой кнопкой мыши файл (canary04.png) в Xcocde и выберите Получить информацию ...

Извините за опечатку.

3 голосов
/ 07 ноября 2012

У меня была такая же проблема. попытаться

  • чистый
  • сборка и запуск

это сработало со мной

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...