Подтвердить что ты не робот

Изображение не отображается в UIImageView в интерфейсе Builder/iPhone

У меня есть UIView с UIImageView, перетаскиваемым в представление. Внезапно, для всех моих xibs, изображение больше не появляется. Существует синий X. Однако, когда он строит, изображение есть.

В какой-то момент я удалил и восстановил все мои изображения и переместил их в подпапку в Xcode. Обычно, когда вы выбираете изображение для UIImageView, IB позволяет вам выбирать из любого изображения в проекте. Но в раскрывающемся списке я больше не вижу никаких изображений, которые я вложил в папку.

Все, что я вижу в раскрывающемся списке Инспектора, - это одно изображение, которое я хочу, но это тоже тот, который не появляется. И, как я уже сказал, если я построю его на устройстве или симуляторе, все это сработает.

Там какой-то кеш или что-то прищурено. Все построено без ошибок. Я очистил тайники и перестроил. Все работает. Нет ошибок или предупреждений. Но... Я не вижу других изображений, и IB все еще думает, что ему не хватает изображения, которое четко выбрано в раскрывающемся списке.

Итак, как мне вернуть Xcode и IB в нужное русло и посмотреть, какие активы он должен видеть в XIB?

4b9b3361

Ответ 1

Попробуйте очистить и перестроить проект.

Если он все еще не работает, удалите все изображения из Xcode (выберите только ссылку на удаление), а затем снова добавьте их, перетащив эти изображения в Xcode. Затем перестройте его, и он должен работать.

Ответ 2

Мой рецепт: CLEAN + Build + QUIT XCODE И ТОГДА ОТКРЫВАЙТЕ ЭТО!

Вуаля!! Это там!

Ответ 3

Убедитесь, что вы добавили изображение в таргетинг при перетаскивании его в проект. Поскольку система Xcode/группа/система проекта не работает, щелкните изображение и убедитесь, что оно фактически добавлено в целевую сборку в инспекторе, как показано (графическая проблема заслуживает графического ответа!):

Добавьте изображение в проект...

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

Добавьте к цели... (или так мы думаем)

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

Фоновое изображение прекрасно отображается в Interface Builder...

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

Но когда мы запускаем, у нас нет ничего, кроме цвета фона, который мы установили... no image...

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

Нажав на UIImageView в Interface Builder и используя инспектор, мы прокрутим вниз и обнаружим, что на самом деле он никогда не добавлялся к цели, как Xcode, явно показанный на шаге 2...

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

Итак, мы добавляем его в цель...

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

И мы строим и бегаем и вуаля! Наше изображение показывает в UIImageView точно там, где оно должно отображаться.

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

Это заставило меня остыть в течение большей части дня, пока я не попытался добавить код, чтобы это случилось, чтобы увидеть, было ли это чешуйчатым изображением. Я добавил его без проблем, создав реализацию viewDidLoad ниже.

Обратите внимание, что вам это не нужно, если Xcode/Interface Builder работает так, как нужно. Либо пользователь IB, либо используйте этот код, а не оба:

- (void)viewDidLoad {
UIColor *   theColor;
UIImage *   theImage;

[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
theImage = [UIImage imageNamed:@"/<redacted>/background sea green gradent.png"];
theColor = [UIColor colorWithPatternImage: theImage ];
[self.view setBackgroundColor: theColor ]; }

Примечание. Это может быть той же проблемой, если ваша кнопка не отображает пользовательское изображение...

Ответ 4

Просто столкнулся с этой проблемой. Экспортировал идентичные изображения в Adobe Illustrator. Один прозрачный, другой белый. Прозрачный появился с синим вопросительным знаком. Однако, работая, он отлично работал. Что-то связанное с IB и прозрачными PNG

Ответ 5

только для записи (потому что ничего не работало для меня):

У нас была только сетчатая графика в наших проектах. После обновления до XCode 5 все изображения имели белый знак вопроса (только в Interface Builder, а не в Simulator). Мы переключили источник изображения на non-retina, который решил случай!

enter image description here

Использование btn-category-6.jpg решило проблему!

Ответ 6

Для меня это было потому, что у изображений был ".png" в инспекторе атрибутов. Исправление проблемы устраняло проблему

Ответ 7

Просто FYI: у меня была аналогичная проблема. В какой-то момент изображения были повреждены, и все они были прозрачными PNG!

Я заменил файлы, и теперь они снова отображаются. Возможно, повреждение изображения произошло, когда я скопировал файлы через проводник Windows в виртуальной коробке Oracle под управлением Windows XP.

Ответ 8

В моем случае, когда я создал новый проект в Xcode 6, я не могу показать изображения в Симуляторе, а также в устройстве. Я импортировал все изображения в объектах изображения, создавая папку внутри этого. Теперь я импортировал все изображения, теперь все работает нормально. Теперь отображаются все изображения.

Выполните следующие действия:

ШАГ 1:

Step 1:

ШАГ 2:

Step 2

ШАГ 3:

Step 3

а затем импортируйте нужные изображения. Ссылка: fooobar.com/questions/242984/...

Ответ 9

У меня были те же симптомы, но я просто переместил папку проекта на рабочий стол, перезапустил проект в IB, и он сработает! Затем снова верните его в одну родительскую папку с другим именем... странно.

Ответ 10

У меня была эта проблема несколько раз. И копирование каталога проекта на рабочий стол, переименование исходной папки, открытие проекта из нового места и перемещение его в исходный каталог снова помогало каждый раз. Все эти файлы "Загрузка всех файлов заголовков" иногда работают, а иногда и не работают

Ответ 11

Это произошло, когда я переместил изображения на xcassets. Я решил это, удалив png и jpg расширения на инспекторе.

Ответ 12

В конце моего имени изображения в указателе атрибутов

отсутствовал .png.

После очистки, повторного импорта и проверки активов, где отображается правильно, ничего не получилось, хотя я обнаружил, что мое изображение (которое является png) появилось после того, как я ввел .png в конце имени изображения на панели атрибутов.

enter image description here

Ответ 13

Убедитесь, что вы ссылаетесь на объект изображения , который фактически существует. Я добавил файлы в каталог Xcode Asset Catalog (.xcassets), как обычно, но забыл переименовать имя по умолчанию "Изображение" на имя, которое я использовал в раскадровке.

Ответ 14

Это случилось со мной, потому что я использовал изображение, созданное с помощью скриншота Mac (используя command ⌘ + shift + 4). Я использовал его с расширением файла, вручную измененным на png.

Вот почему изображение не показывалось в моем случае. Я повторно сохранил изображение в формате jpg, и он отлично работал.

Ответ 15

Если у вас установлены все 1x, 2x и 3x изображения, очищены и построены проект, и он по-прежнему не отображается правильно, выйдите из Xcode и принудительно завершите работу, а затем снова откройте Xcode. Для меня был просто простой перезапуск Xcode.

Ответ 16

Убедитесь, что у вас есть объект, соответствующий размеру изображения, которое соответствует размеру экрана, который вы просматриваете, в файле Interface Builder в Xcode. Есть пятна @1x, @2x и @3x для объектов изображения, если вы используете каталог активов в Xcode или, если вы его не используете, тогда у вас должны быть разные активы, дифференцированные по имени файла (например, image.png, [email protected], [email protected]).

У вас может не быть нескольких размеров активов и просто предоставил один актив, скажем, 1x или 3x, и вы можете просматривать экран в Interface Builder для типа устройства, в котором используется другой размер актива, и, таким образом, UIImageView t в Xcode. Например, я просматривал интерфейс для iPhone 7, который использует 2x, но у актива была только 3-кратная версия. Когда я добавил версию 2x, она сразу появилась в интерфейсе Builder в Xcode.

Обратите внимание, что даже если он не отображается в Xcode, он может быть корректно отображен во время выполнения. Тем не менее, хорошей практикой является предоставление активов с разрешениями, которые будут соответствовать каждой модели устройства.

Ответ 17

Я сталкивался с этой проблемой несколько раз - иногда (я не слишком уверен, почему...), Xcode, похоже, забывает ссылку между UIImageView и изображением в вашей папке.

Затем может быть так же просто, как обратиться к инспектору атрибутов для этого образа, и если в окне изображения указано "Неизвестное изображение", повторите выбор правильного изображения!

Инспектор атрибутов UIImageView

Ответ 18

Если ни один из этих ответов не работает, одной из возможных причин может быть: Если вы используете кнопку UIB и отображаете в ней изображение, убедитесь, что у кнопки нет заголовка. Он покажет эллипс (...), потому что заголовок кнопки усекается.

Ответ 19

Для меня проблема была, я мог видеть новые добавленные файлы изображений на Show the media library но не в раскрывающемся списке для моей кнопки Image

Для меня решение было, набрав имя вручную. Когда я начал печатать имена изображений в текстовом поле, он автоматически заполнял его и все. |

PS: я также реализовал выбранное решение, прежде чем сделать это

enter image description here

Ответ 20

Для меня мне просто нужно нажать на мои активы и просмотреть изображения там кратко. Затем я возвращаюсь к раскадровке и изображения заполняются.