UIImageView отсутствуют изображения на экране запуска на устройстве

У меня есть приложение, поддерживающее iOS8 и более поздние версии, построенное на Xcode 7, и я использую XIB для экрана запуска (у меня нет изображений запуска). Представление содержит один UILabel с версией приложения и два UIImageView с изображениями, которые оба присутствуют в Images.xcassets: логотип и заставку.

UILabel и изображение логотипа отображаются правильно, когда я запускаю приложение, но изображение заставки не появляется, если я запускаю приложение на iPad Air 2 с iOS9. Я тестировал симуляторы Air и Mini под управлением iOS8 и iOS9 для iPad 2, iPad Air и iPad Air 2, и во всех них изображение отображается правильно.

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

Вот краткое изложение того, что я знаю:

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

  • Установка UIImageView для изображения-заставки, чтобы также использовать изображение логотипа, заставляет изображение логотипа отображаться в правильном месте для представления. Это также заставляет меня предположить, что точка зрения не виновата.

  • UIImage, который я использую в представлении заставки, используется в другом месте приложения и отлично отображается в этих других представлениях (изображение логотипа также используется в другом месте приложения и выглядит нормально). Поэтому я предполагаю, что изображение действительное и его отображение в других представлениях не является проблемой.

  • Я подтвердил, что настройки UIImages для логотипа и заставки в файле xcassets одинаковы. Для них установлено значение «Универсальный», «Любая ширина и высота», несколько коэффициентов масштабирования, отображаются по умолчанию. Есть одно отличие - логотип имеет масштабы 1x, 2x и 3x, в то время как изображение-заставка имеет только 1x и 2x, но я также пробовал использовать UIImages только со значениями 1x, 1x и 2x в UIView, и они работают (если бы они были добавлен в проект некоторое время назад).

  • Добавление другого изображения другого размера или формата (PNG и JPG) в мои xcasset и использование этого UIImage в UIImageView для заставки также не отображается.

  • Добавление еще одного UIImageView в файл XIB и присвоение ему UIImage, который уже был в xcasset, работает, изображение появляется на экране загрузки.

  • Копирование и переименование файлов изображений, используемых для логотипа, и добавление их в проект с последующим использованием этого UIImage в представлении-заставке также не отображаются.

  • Я попытался очистить проект, перезапустить машину разработки, удалить приложение из Air 2 и переустановить его на всякий случай, если возникла проблема.

Эти последние три шага наводят меня на мысль, что есть некоторая проблема с изображениями, добавленными после определенного момента времени жизни файла проекта. Хотя вчера я обновился до Xcode 7, заставка была изначально добавлена ​​в Xcode 6, но изображение логотипа (также добавленное в Xcode 6) было добавлено за несколько месяцев до этого.

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

Поэтому мне было интересно, есть ли у кого-нибудь идеи, почему на экране запуска могут не отображаться эти новые изображения, которые я добавляю специально для Air 2? Другие вопросы, которые я прочитал, касающиеся изображений, которые не отображаются все, похоже, относятся либо к изображениям запуска, либо к изображениям в файлах XIB, которые имеют связанные классы, ни один из которых здесь не кажется уместным.


person MFW    schedule 15.09.2015    source источник
comment
Я хотел ответить на этот вопрос - я вернулся и прочитал предоставленные ответы, затем вернулся в Xcode и повторно добавил UIImageView и изображение, чтобы опробовать их. На этот раз все заработало без изменений. Понятия не имею, почему - та же версия Xcode, я перезапустил, перестроил, очистил и удалил приложение раньше, та же iOS, та же Mac OS, все просто сработало. К сожалению, я не смог проверить, помогло ли какое-либо из решений.   -  person MFW    schedule 14.10.2015
comment
Для меня НИ ОДИН из предоставленных ответов не решил проблему. Симулятор, iPhone 5, iPhone 5 SE, iPad 4 правильно отображают UIImageView в моем LaunchScreen.xib, iPad Air 2 не отображает его. Перезагрузил все устройства, переустановил на все устройства. Поведение остается.   -  person Christian    schedule 07.07.2016
comment
Эй, вы должны принять ответ, за который проголосовало более 130 человек.   -  person Khanh Nguyen    schedule 21.07.2016
comment
Согласен с Khanh, у большинства работает !!   -  person gunjot singh    schedule 26.10.2016
comment
@MFW, ПРИНИМАЙТЕ ОТВЕТ FFS! Я СООБЩАЮЩИМ U МЕНЖАРАМ.   -  person GeneCode    schedule 18.10.2017


Ответы (35)


Выключите, а затем снова включите.

Серьезно, перезагрузите устройство - вот что исправило для меня.

Вот что не помогло:

  • Очистка DerivedData
  • Очистка проекта
  • Удаление приложения с устройства
  • Перезапуск Xcode
  • Перезагрузка компьютера

Предыдущие наблюдения:

Как и другие, это:

  • Прекрасно работает в симуляторе
  • Используется для работы на устройствах (iPhone 5S, iPad Air)
  • Никаких изменений кода (проверено через git reset --hard HEAD), но перестал работать.

Я помню, что при запуске первой сборки, где она перестала работать, было отключение iPhone от сети во время его работы. (Не уверен, связано ли это.)

Однако git reset, не исправляющий его (в сочетании со всеми неработающими чистыми шагами), говорит мне, что это должно быть кэшировано где-то еще. Вполне возможно, что в одном из файлов .gitignored? (Я использую файл игнорирования Git для проектов Xcode)

Один обходной путь, который работал для одного UIImageView (в UIView, у которого их три), но не для остальных, заключался в помещении изображения в файл .xcassets. Возврат к файлу простого изображения не отменил исправление. (Действительно похоже на ошибку кеширования.)

ОБНОВЛЕНИЕ: см. Вверху - это исправило перезапуск устройства. У меня такое ощущение, что на самом устройстве кэшируются неправильные данные растрового изображения.

Радар: http://openradar.appspot.com/23534818

person Aral Balkan    schedule 13.11.2015
comment
Просто перезапуск симулятора сделал это за меня. Сумасшедший! - person FractalDoctor; 19.11.2015
comment
Спасибо! Это исправило это и для меня. - person CodenameDuchess; 02.02.2016
comment
Как вы думаете, столкнутся ли пользователи App Store с той же проблемой? - person Adam Waite; 15.02.2016
comment
Вау, так просто, я сходил с ума. Думаю, это не что иное, как нехватка памяти. Apple уделяет особое внимание своевременному отображению экранов LanuchScreen, поэтому он просто избегает растягивания или даже отображения изображений, если приложение считает, что это займет слишком много времени. Спасибо, в любом случае. - person M. Porooshani; 18.02.2016
comment
Спасибо, @Aral Balkan, ты спас мне день! - person SandeepAggarwal; 26.02.2016
comment
Я пробовал много способов, но каждый раз, когда я запускаю приложение на своем мобильном телефоне, возникает эта ошибка. как полностью исправить эту ошибку? - person TomSawyer; 02.03.2016
comment
@AdamWaite интересно, испытали ли ваши пользователи это после того, как приложение было выпущено в App Store. - person Daniel Storm; 03.03.2016
comment
@danielstorm так и не узнал, если честно - person Adam Waite; 04.03.2016
comment
Какой отсталый баг, яблочко. Перезагрузка телефона у меня сработала, спасибо. - person Jacob King; 11.03.2016
comment
Работал у меня. Это серьезно запутанная ошибка. - person James Parker; 14.03.2016
comment
Это сработало для меня, но серьезно, почему эта ошибка все еще существует ?! Это разрушило несколько часов моих выходных. знак равно - person burnt1ce; 12.06.2016
comment
гениальное решение. все остальные решения - просто куча дерьма !! - person Mark Thien; 30.07.2016
comment
Просто перезапуск на устройстве ..... Ой, это безумие! ... Я считаю, что это ошибка с xCode! - person Bruno; 03.09.2016
comment
У меня тоже работал - person abhimuralidharan; 05.09.2016
comment
У меня это не сработало, но ответ от NikLanf сработал. Снятие флажка «Очищает графический контекст» в UIImageView исправило это. - person ben_the_builder; 15.09.2016
comment
2016. iOS 10. Ошибка все еще есть. - person René; 13.10.2016
comment
Спасибо, что поделились, к сожалению, я уже потерял час своей жизни. Я предполагаю, что раскадровка LaunchScreen хранится в кеше, поэтому она не считывает никаких изменений в файлах изображений до перезапуска. - person cdf1982; 07.01.2017
comment
@Aral Balkan Иисус, мужик! Перезагрузка устройства сделала свое дело iOS 10.2.1 Xcode 8.2.1. Большое спасибо! - person Alex; 22.02.2017
comment
Шутки в сторону! Хотел бы я вчера найти твой пост. - person Magnas; 01.06.2017
comment
Самого по себе перезапуска было недостаточно (при повторном запуске приложения с iPad), но выполнение (повторной) сборки и запуска из Xcode помогло! - person Jochem; 05.09.2017
comment
Сработало у меня! Слишком странно! Я уверен, что инженеры Apple читают эту фразу: «Знаете, нам действительно нужно исправить это на днях». - person piccy; 20.09.2017
comment
То же самое со мной. Перезагрузили устройство, а затем снова запустили приложение из XCode. Работает. XCode 9 все еще имеет эту глупую ошибку. Но давайте сделаем отметку на iphoneX. ffs яблоко. - person GeneCode; 18.10.2017
comment
Спасибо! У меня тоже сработало, но мне нужно сделать несколько дополнительных шагов: 1. удалить приложение 2. перезагрузить устройство 3. установить приложение - person Jhonatan Muller; 22.01.2018
comment
У меня не сработало на моем iPad Air 2. Решение NikLanf сработало :) - person heyfrank; 06.07.2018
comment
она сказала мне не волнуйся - person Richard Topchii; 09.07.2018
comment
Я тестировал свое устройство (iPhone X 256 ГБ) и потратил 1 час, пытаясь разные изображения из каталога активов, все, кроме одного, которое я хотел, работали. Это заставило меня подумать, что проблема была в формате файла, несколько раз регенерировал файл. Ничего не работало ... пока я не нашел это. Простая перезагрузка устройства все исправила. СПАСИБО, Aral и STACKOVERFLOW, я не могу представить себе жизнь разработчика до вас. - person Rodrigo Recio; 12.07.2018
comment
Потерял на это 30 минут ... Потом перезапустил и все заработало :( - person jovanjovanovic; 09.09.2018
comment
На iOS 13 по-прежнему требуется перезапуск. Перед повторным запуском приложения мне также нужно было удалить приложение с устройства и одновременно очистить проект. В противном случае неправильный экран запуска снова кэшируется, и требуется повторный перезапуск. - person Theo; 15.09.2019
comment
Спустя 4,5 года в 2020 году с Xcode 11 сейчас, и нам все еще нужно перезапустить устройство симулятора ... вау. Только представьте себе часы, сэкономленные людьми по всему миру, если бы кому-то в Apple действительно потребовалось время, чтобы это исправить. - person CyberMew; 31.01.2020

«Решение для меня заключалось в том, чтобы просто убедиться, что флажок« Очищает графический контекст »не установлен для UIImageView в раскадровке. Просто изменив это, я все исправил». Никакие другие решения у меня не работали. Получил с форума разработчиков Apple

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

person NikLanf    schedule 18.02.2016
comment
Блин, никогда бы не подумал попробовать это. Исправляет симулятор и устройство с Xcode 7.3.1 (7D1014) и iOS 9.3.2 Developer Beta 3. - person Nuthatch; 15.05.2016
comment
Я могу подтвердить, что это тоже сработало для меня. Xcode 7.3 и iOS 9.3.2. - person Torbjørn Kristoffersen; 18.06.2016
comment
Даже с моим уже отмеченным - снятие и повторная проверка сделали свое дело! - person lonesomewhistle; 23.06.2016
comment
При наличии изображения в .xcassets это не работает, но после добавления изображения непосредственно в проект это начало работать. Спасибо! - person Josip B.; 07.07.2016
comment
Блин! Странный. +1 за ваш ответ! Большое спасибо. Сэкономил мое время. - person iGatiTech; 22.07.2016
comment
Хороший +1 за ваш ответ, также работает в Xcode 8 и iOS 10 - person Skovie; 23.09.2016
comment
Это сработало только для меня, когда изображение напрямую добавляется в проект, а не через активы, которые, к сожалению, имеют только один размер. - person vinbhai4u; 05.10.2016
comment
Спасибо! Исправлена ​​эта проблема для меня в XCode 8.3, раскадровка экрана запуска, с использованием PDF / векторного изображения из каталога ресурсов. - person xaphod; 10.04.2017
comment
Это правильный ответ. Проверено на iOS 11, на устройстве. - person jberlana; 15.11.2017
comment
Какого черта они автоматически проверяют это за вас? Большое вам спасибо, вы сэкономили мне много времени. - person Aaron Smentkowski; 15.12.2017

У меня была точно такая же проблема на iPhone 6.

Очень странно то, что я смог использовать другое изображение из моих изображений images.xcassets, которое имело такой же размер, степень сжатия, цветовое пространство ...

Я не могу найти, почему это не работает, но я нашел решение: просто поместите свой файл за пределы ваших images.xcassets и используйте его полное имя (с расширением) в Interface Builder

splashScreen в примере раскадровки

Надеюсь на эту помощь!

person gbitaudeau    schedule 24.09.2015
comment
Это было первое, что я попробовал, но у меня это не сработало. - person Paul Slocum; 25.09.2015
comment
Это сработало для меня; Благодарю. Хотел бы я знать, почему это работает только для некоторых изображений в файлах xcasset ... - person Christopher King; 09.11.2015
comment
Для меня это работает с самого начала, но теперь свойства изображения или метки вообще не обновляются. Даже после чистки продукта. Сообщил об ошибке здесь: bugreport.apple.com - person Philip Borges; 27.12.2015
comment
Перезагрузка iPhone 6s после удаления приложения сделала свою работу. До этого решение NikLanf, приведенное ниже, очищает также графический контекст. - person Matthew Ferguson; 23.01.2017
comment
Это работает. Причина в том, что, я думаю, из-за того, что .xcasset еще не загружен, когда отображается экран запуска. Если задуматься, то для этого и нужен экран запуска - время ожидания ios для загрузки содержимого приложения, включая xcasset. Я предполагаю, что это не работает, так как все, что находится в корневой папке приложения, будет загружено первым. - person GeneCode; 01.04.2017
comment
Обновление для Xcode 8.3.2: ошибка все еще существует, но исправление работает :) - person LinusGeffarth; 13.05.2017
comment
Так глупо ... это сработало для меня в бета-версии XCode 9, когда изображение заставки отличалось от значка приложения -_- - person jlmurph; 24.08.2017
comment
Большое спасибо! Два первых ответа не сработали в моем случае. Использование XCode 9.2 с iOS 11.2.5 - person leandrodemarco; 01.02.2018
comment
Это сработало для меня с UIImageViews, у которых были выходы - Xcode 9.0.1 iOS 11.0.1. Все еще трудно поверить, что это работает - все просто. Будет сложно ориентироваться в дереве - более 100 png для флагов. Ну что ж. - person user3741598; 06.02.2018
comment
Xcode 9.4, и он до сих пор не исправлен, но ваше решение работало как шарм. - person Nauman Aslam; 27.08.2018

Следующая последовательность операций устранила проблему для меня в Xcode 7.3.1 и iOS 9.3.4:

  1. Очистите свою сборку (⌘ + ⇧ + K)
  2. Закройте Xcode
  3. Аппаратный сброс устройства iOS (перезагрузка кнопки Power + Home)
  4. Перезапустите Xcode - позвольте индексации закончиться и построить на устройстве, как только оно будет готово.
person mayankk2308    schedule 07.08.2016
comment
Спас мой день! Спасибо! - person Zack Zhu; 04.10.2016
comment
Работал. Шаги 2 и 4 я не делал, возможно, нужен только Hard Reset устройства iOS, может кто это подтвердить? - person Timothy L.J. Stewart; 23.10.2016
comment
@ TimothyL.J.Stewart Шаги 2 и 4 были просто дополнительными мерами предосторожности, которые я предпринял, потому что эта проблема меня сильно раздражала - так что это было просто для уверенности. Я думаю, вы правы, говоря, что они могут быть ненужными, поскольку они (как правило) не влияют на сборку. - person mayankk2308; 23.10.2016
comment
Xcode 8 Swift 3.0 Отключение питания или полный сброс настроек - единственное, что работает каждый раз, и должно выполняться каждый раз, когда добавляется новый актив. Удаление DerivedData - нет. Однако в симуляторе изображение работает правильно. Это потратило так много моего времени, спасибо @MayankKumar за решение. - person Timothy L.J. Stewart; 23.10.2016
comment
Работал как шарм - person lborgav; 13.08.2017
comment
Это сработало для меня на моем устройстве и симуляторе. Мне даже не пришлось перезапускать Xcode. iOS 11.3 - person Kubee; 11.04.2018

Многие другие ответы предлагают перезагрузить устройства и / или перестроить и / или переустановить решение.

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

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

Этот SO-ответ от @jaga предоставляет решение, но не причину, почему UIImageViews отсутствуют на экране запуска на устройство (но не в симуляторе).

Фон

Недавно я попытался использовать собственный шрифт в моем файле «Launch Screen.storyboard».

Причина, по которой я не смог понять, прочитав этот SO-ответ @TimCamber, который побудил меня провести еще немного исследований и тестов.

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

Приложение готовит портретные и альбомные снимки экрана запуска приложения из файла раскадровки экрана запуска и (в настоящее время) сохраняет их в вашем пакете приложений здесь:

  • /Library/Caches/Snapshots/<<app_bundle>>/ и
  • /Library/Caches/Snapshots/<<app_bundle>>/downscaled/.

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

Решение

Как упоминалось выше, следуя решению @ jaga, буквально все, что требуется, это:

  1. (старая школа) добавьте файл изображения (.PNG) в пакет вашего приложения (как вы можете видеть на скриншоте ниже, я добавил файл изображения в подкаталог Supporting Files в подкаталоге Images) и

снимок экрана соответствующих каталогов в Project Navigator в Xcode

  1. ссылка на это изображение в вашем объекте UIImageView в файле раскадровки экрана запуска ...

снимок экрана раздела просмотра изображений для UIImageView в инспекторе атрибутов в Xcode

person andrewbuilder    schedule 19.04.2016
comment
Спасибо, я немного боролся с этим. Это подходит для меня. - person James Laurenstin; 05.09.2016
comment
работал у меня напрямую. это должен быть правильный ответ - person Mohammad Shraim; 30.03.2017
comment
При запуске IOS не смогла скомпилировать ресурсы, поэтому размещение вашего изображения в пакете работает. Спасибо. - person icould; 12.04.2017
comment
Лучший ответ на данный момент. Я добавлю следующее: изображение должно находиться в корневом каталоге пакета приложений. В противном случае вы должны указать полный путь Media / launch_v1_200_mod.png, если вы храните изображения в подкаталоге. - person MoVod; 10.05.2017
comment
Я сделал то же самое. Мое приложение уже запущено, но проблема в том, что иногда оно показывает изображение, а иногда квадрат белого цвета в середине экрана. - person Punit; 24.10.2018

Я видел ту же проблему. Перезагрузка устройства (iPhone 6) и восстановление приложения на устройстве - единственное, что исправило это. Я попробовал много других советов и предложений, но ничего не помогло. Помогла только перезагрузка + ребилд.

person Bruce L    schedule 16.11.2015
comment
Как это будет выглядеть, если пользователь обновит приложение из AppStore? Потребуется ли перезагрузка устройства? - person kokos8998; 27.05.2016

Мое решение @iOS 11.x:

  • Используйте изображение .jpg вместо .png. Я думаю, что размер файла изображения имеет значение;
  • (Необязательно) Поместите файл изображения в каталог проекта, а не в .xcassets;
person Ke Yang    schedule 08.01.2018
comment
Помогло размещение файла изображения за пределами .xcassets - person Husam; 13.01.2018
comment
@Husam Я действительно думаю, что важен только размер файла. У меня есть стартовый экран с двумя изображениями: большим (400 + КБ .png) и логотипом (10 + КБ .png, внутри .xcassets). Логотип всегда отображается нормально, а большой - нет. - person Ke Yang; 13.01.2018
comment
Вы правы .. После моего комментария проблема снова появилась после добавления еще одного изображения. Спасибо за вашу помощь - person Husam; 13.01.2018
comment
Затем следуйте вашим инструкциям, используя изображение jpg и работайте - person Husam; 13.01.2018
comment
Что делать, если вам нужна прозрачность? - person JCutting8; 21.06.2020

У меня было то же самое для приложения, установленного из TestFlight. Удалить приложение -> затем перезагрузить iPhone -> затем переустановить приложение у меня работает. Просто переустановите приложение или просто перезагрузите устройство.

person Petro Shm    schedule 28.01.2016
comment
Это единственное, что у меня сработало - жаль, что я не видел это 90 минут назад! - person KML; 22.04.2016
comment
хотел бы я видеть это 4 часа назад - person gerry.liang; 31.05.2016
comment
У меня тоже сработало, но проблема странная: | - person Nishu_Priya; 03.05.2018

У меня была та же проблема, но перезапуск устройства не помог. Что сработало для меня, так это удаление UIImageView из моей раскадровки запуска и добавление нового.

person Jim Rhoades    schedule 23.12.2015

Что сработало для меня, так это выбрать Сбросить содержимое и настройки ... в меню симулятора.

Сбросить содержимое и меню настроек

person andynil    schedule 08.01.2017
comment
Три года спустя и вот что исправило это для меня. Сейчас Device > Erase All Content and Settings... - person Jase; 19.11.2020

Вы пробовали выключить и снова включить устройство? Сделайте это.

person Jakub Truhlář    schedule 28.02.2016

Извлеките изображения из Image.xcassets и снова добавьте их в проект. У меня это сработало.

person Trinh Tran    schedule 29.03.2016
comment
Это работает только потому, что вы заставляете приложение воссоздавать снимки экрана запуска, но это не решение или причина проблемы. - person andrewbuilder; 07.06.2016

Удалите приложение с мобильного, затем перезапустите мобильное устройство и снова установите приложение. теперь вопросы будут решены

person midhun p    schedule 25.04.2019

У меня также была эта проблема в Xcode 7 с устройствами iPad и iPhone. Хотя в этом нет никакого смысла, мне удавалось обойти это большую часть времени, установив не только изображение, но и выделенное изображение в представлении изображения на то же изображение в моем images.xcassets.

person bonnie lapin    schedule 25.09.2015
comment
Кажется, мне тоже помогли - person rafalkitta; 11.07.2016

Пользуюсь устройством iPhone 5s, тоже встречаюсь с этой проблемой.

Я исправляю это:

  • Удалить данные с Диска

  • Очистить проект

  • Перезапустить Xcode

  • Удалите проект с моего устройства

  • Перезагрузите 5с.

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

person guozqzzu    schedule 02.12.2016
comment
Не знаю, но заработало .. вроде хорошо. Спасибо, чувак, что поделился. - person Arpit B Parekh; 21.01.2017

у меня это сработало.

Сначала в xcode clean de project.

Если вы используете симулятор, удалите приложение и перезапустите.

Если вы используете устройство, удалите приложение и перезапустите устройство.

person oscar castellon    schedule 18.09.2017

Я думаю, что экран запуска поддерживает только изображение в Assets.xcassets.

person Sunly    schedule 28.02.2017
comment
Я попробовал все ответы выше, и ни один из них не помог мне. Но этот ответ решил проблему. - person Ercan Celik; 03.11.2017

Перезапуск Xcode сделал это за меня.

Что не:

  • Папка чистой сборки
  • Перезагрузите устройство или симулятор (изображение не было видно ни на одном из них)
person Manuel    schedule 21.03.2016

Выберите ImageView, а затем удалите расширение изображения (.png или .jpg) на вкладке инспектора атрибутов> Просмотр изображения> Изображение> Имя изображения.

На launchscreen.storyboard изображение не появится, но оно будет на устройстве. Это сработало для меня.

person Asha Antony    schedule 09.02.2017
comment
Это тоже была моя проблема. Как ни странно, на некоторых устройствах случайным образом сработало. Xamarin-Project с Xcode 9.4 для редактирования XIB / раскадровки ... - person heyfrank; 26.06.2018

Казалось баг iOS. Вроде иногда пропадала системная анимация.

Теперь я просто перезагружаю iPhone, и у меня все работает.

person Amon Xu    schedule 12.05.2016

В моем случае это было имя изображения.
Я добавил изображение с именем [email protected] в LaunchScreen.xib - один из моих старых экранов запуска только в целях тестирования. Я создавал симулятор iPhone X, изображение не отображалось.

Изменение имени на нейтральное (MyImage.png) решило проблему.

Кажется, что @2x был частью проблемы, как и -568h. Что имеет смысл на -812h@3x устройстве.

person de.    schedule 13.11.2017

У меня такая же проблема с imageView раскадровкой экрана запуска. Я удалил ссылку на изображение из проекта, я переименовал свое изображение и снова добавил его в проект. Все работает отлично.

person ostap_holub    schedule 21.04.2016

Также можно 1. удалить изображение проекта 2. изменить имя изображения 3. добавить изображение файла в проект

У меня это сработало.

person Jesse    schedule 03.08.2016

У меня была эта проблема в iOS 10 на iPhone 6, а также в симуляторе. Мое изображение было в папке, и это, казалось, было проблемой. Я удалил изображение из папки в Xcode и поместил его в базовый каталог проекта, что решило проблему.

person JamieDass    schedule 03.04.2017

Я испытываю то же самое. Я меняю разрешение изображения с 300 пикселей / дюйм, меняю на 72. У меня работает.

person Tim Le    schedule 27.04.2017

Далее мне помогли:

  • заменить "Файл экрана запуска" на другой xib
  • запустить приложение
  • поменять xib обратно

Также очень важно: убедитесь, что ваш is xib не открыт на другой вкладке, это тоже может быть причиной этого!

person Vladimir Tolstikov    schedule 27.10.2016

Я нашел простое, но радикальное решение, которое сработало для меня:

1 - Удалите файл: LaunchScreen.storyboard и переместите его в корзину.

2 - Продукт -> Очистить

3 - Создайте новый файл экрана запуска с именем: LaunchScreen.storyboard и поместите в него свои изображения.

4 - Сохранить и построить

Это сработало для меня после нескольких часов использования сложных методов ... Кажется, моя LaunchScreen.storyboard была заблокирована от записи и не могла быть сохранена, или странный процесс кеширования блокировал ее.

person Fox5150    schedule 08.08.2017

Это слишком важно. Должно быть пусто! Launch Screen File

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

person SwiftDeveloper    schedule 07.09.2016
comment
Он использует раскадровку XIB для запуска, этот ответ не сработает. - person benck; 30.09.2017

Проблема в названии изображения. Переименуйте имя изображения, используемое в раскадровке экрана запуска. Убедитесь, что вы не используете какие-либо символы, кроме буквенно-цифровых (не используйте "_- & @") Сработало для меня как шарм ..

person Aproram    schedule 06.06.2018

РЕШЕНО!

Единственное, что у меня сработало, это удаление ViewController из LaunchScreen.storyboard и создание нового ViewController, установленного на

Начальный контроллер представления

Просто как тот :)

person Breno Medeiros de Oliveira    schedule 12.11.2018

Простое решение - использовать JPG вместо PNG.

person KING    schedule 05.06.2018
comment
JPEG не поддерживает прозрачность. - person JCutting8; 21.06.2020

В моем случае я просто захожу в приложение ЦЕЛИ -> Общие -> Значки приложений и изображения для запуска -> Источник изображений для запуска. Затем выберите источник, в который я помещаю изображения. Надеюсь, это поможет вам.

person Hoang Quan    schedule 06.07.2016

Для меня проблема заключалась в том, что размер моего экрана запуска был меньше на 1 пиксель (2209x1242 вместо 2208x1242). Исправление, затем перезагрузка устройства и восстановление приложения помогли.

person gklka    schedule 11.07.2016

«myProject» - это множество изображений, инициированных из Images.xcassets. Но я столкнулся с отсутствующими изображениями после удаления и восстановления Assets.xcasset из проекта.

  1. Случайное удаление Images.xcassets, но
  2. Добавление Images.xcassets обратно в "myProject"

Я столкнулся с этой проблемой с отсутствующими изображениями и попробовал следующие методы:

  1. Включите питание устройства, но оно не работает.
  2. Использование Xcode для «сборки» проекта после «очистки» тоже не работает.

Решение моей проблемы:

  1. Добавлены все изображения в Images.xcassets обратно в «myProject» через Xcode в «Целевое членство» в «Показать в File Inspector», и оно вернулось в нормальное состояние.
person Wang3t    schedule 22.09.2017

Выберите файл изображения в левом меню, выберите «Показать файловый инспектор» в правом меню «Утилиты». Под целевым членством убедитесь, что ваша цель выбрана. Я добавил изображение, выбрав цель, но не знаю, почему оно не было выбрано. Все решения перепробовал, перезапуск, удаление и т. Д. Ни у кого не работает. Просто это сработало. Надеюсь, это поможет кому-то другому.

person nfinfu    schedule 04.10.2017