Я пытаюсь получить изображение для отображения в качестве стартового экрана из моего файла Launch Screen.storyboard, однако изображение никогда не отображается. У меня есть ярлыки, которые хорошо отображаются, но изображение не появляется.
Вот как выглядит экран запуска в файле Launch Screen.storyboard:
Однако, когда я запускаю приложение на симуляторе (а также на физическом устройстве), вот что проявляется:
Как видите, метка «Тест» отображается нормально, однако изображение не отображается. Я действительно не уверен, почему это происходит, и ничего, что я пытаюсь, кажется, не работает. Если у кого-то есть идеи, как это исправить, это будет с благодарностью.
Ответы:
После перезапуска XCode, очистки сборки и ряда других предложений на SO об этой проблеме. Что на самом деле исправило для меня, так это жесткая перезагрузка устройства. (Я потратил на это больше часа)
Я полагаю, это просто говорит о том, что старая поговорка «Вы выключили и снова включили» все еще верна для последних гаджетов!
Как перезагрузить iPhone XS или iPhone XS Max
источник
Я тоже возился с этим часами. Но я нашел решение сейчас. Вам нужно добавить изображение в ваш проект, а также в assets.xcassets с помощью перетаскивания.
источник
launch
. Но это все еще не сработало. Мне пришлось переименовать файлы изображений в launch.png, launch@2x.png и launch@3x.png, добавить их в проект, добавить их в качестве актива с именемlaunch
, и тогда это сработало. Благодаря компании Apple для создания самых простых вещей , без необходимости сложных ¬_¬У меня была та же проблема, добавление изображения в «Фазы сборки -> Копировать ресурсы комплекта» исправило это для меня.
источник
Выполните следующие шаги,
Если не работает, удалите производные данные. Настройки XCode-> Locationtab-> Производные данные. Затем выполните вышеуказанные шаги.
источник
Это случилось со мной и сводит меня с ума, за исключением того, что я теряю несколько минут, пока я не пойму это.
Итак, как было сказано ранее:
На экране дизайна он не появится, но когда вы запустите приложение, оно будет показано.
Я надеюсь, что это может помочь!
источник
Очень расстраивает. Решение, которое наконец сработало:
Сделать жесткую перезагрузку устройства
Удалить приложение
Установить приложение из Xcode
источник
Наконец перезагрузите телефон у меня работает !!
Я потратил часы на эту проблему. Попытался изменить имя изображения, удалить все ресурсы изображения, изменить info.plist, перезапустить Xcode и даже попытался установить все атрибуты изображений (что вы можете сказать, насколько я был в отчаянии).
источник
Эта проблема связана с Assets.xcassets, чтобы исправить ее, вы должны добавить изображение в качестве ресурса, но не в папку xcassets, а затем должно работать нормально
источник
В моем случае сброс содержимого и настроек симулятора устранил проблему.
источник
Я столкнулся с той же проблемой.
источник
Кажется, есть некоторая проблема с кэшированием ресурсов в xCode. Возникла такая же проблема, перезапустил xCode и после этого все работает нормально.
источник
Перезагрузите ваше устройство и удалите данные, полученные из x-кода
источник
Попробовав все в нескольких потоках StackOverflow, вот что сработало для меня:
(Возможно, придется обновить продукт или производные данные для обновления, но мне не нужно было)
источник
У меня была эта проблема после добавления изображения в проект и снятия с устройства устройства, проблема решена
источник
Менял фоновое изображение заставки, а новое изображение не показывалось (реагирует на собственный проект).
Следуя ответам других.
Я сделал все ниже и это было исправлено:
источник
Ну, на данный момент доступно устройство сетчатки, и я проигнорировал
@1x
изображение вAssets.xcassets
.В моем случае у меня есть логотип приложения на экране-заставке, который не виден при запуске приложения.
После того, как тратить так много времени , я понял, что я только при условии
@2x
и@3x
изображений для этого изображения логотипа.источник
Вы должны убедиться, что имя файла вашего изображения имеет формат .png или .jpg в конце, иначе оно не будет работать. Кроме того, перед добавлением изображения вы должны убедиться, что файл изображения находится в папке «Assets.xcassets» в вашем проекте. Это можно сделать простым перетаскиванием. Кроме того, убедитесь, что при добавлении изображения в раскадровку имя изображения в верхнем левом углу также соответствует реальному имени файла изображения. Я бы тоже попробовал изучить ограничения. Надеюсь это поможет. Удачи в вашем приложении.
источник
Я потратил часы на эту проблему, прежде чем, наконец, осознал свою ошибку. Когда вы добавляете изображение в UIImageView, оно будет использовать только имя изображения. Если ваши изображения находятся в папке, отличной от раскадровки, они будут отображаться в xcode, но не при запуске приложения. Вы должны добавить соответствующий префикс пути к файлу, например, images / image.png. Теперь он будет отображаться как синий знак вопроса в xcode, но он будет работать в приложении.
источник
Просто чтобы добавить мои $ 0,02 к этому вопросу; Я решил это, используя изображения PNG вместо изображений JPG / JPEG.
После преобразования изображений в формат PNG и сжатия их для небольшого уменьшения размера все работало нормально.
источник
Потратив много времени, я получил решение:
источник
Я столкнулся с той же проблемой. Пробовал разные решения для этого, но ничего не помогло. Затем я понял, что изображение не было видно только тогда, когда я непосредственно установил приложение на устройство, и приложение все еще подключено к xcode. Если я отключу его, а затем открою приложение, изображение было видно, как ожидалось. Это может быть ошибка xcode.
источник
Я попытался очистить проект, удалив png, сняв ограничения, у меня не получилось.
Я просто сделал еще одну копию изображения и переименовал копию, затем удалил старое изображение и добавил новое изображение (То же самое, с измененным именем). Я просто дал это изображение, и оно работало на меня.
Также я не использую Assets.xcassets, используя изображение в папке.
источник
Я пробовал так много вещей с этим (одна только эта тема, кажется, имеет миллион идей, и половина из них противоречива). Проблема для меня заключалась в том, что когда я делал такие вещи, как перезапуск устройства и Xcode, это приводило к тому, что изображение показывалось в течение нескольких сеансов приложения, а затем останавливалось (я понятия не имею, почему, но ВАУ это раздражало) ,
После бесчисленных часов я обнаружил, что ответ А.Г. в этой теме является правильным. Единственное, что я делал неправильно, было то, что я создавал новый набор изображений в xcassets, но тогда я все еще использовал имя изображения в UIImageView внутри раскадровки вместо того, чтобы использовать имя набора изображений.
Чтобы уточнить, что вы должны сделать, это создать новый набор изображений и назвать его что-то вроде «Launch-Defaults», а затем добавить свои изображения к нему. Затем в UIImageView внутри раскадровки вы используете изображение «Launch-Default» (не включая расширение, поскольку его нет, так как это набор изображений).
Когда вы делаете все это, изображение должно правильно отображаться внутри вашей раскадровки. Некоторые люди говорят, что изображение будет отображаться пустым, если вы не используете расширение (.jpg или .png), но я предполагаю, что это потому, что они не используют имя набора изображений. Другие говорят, что вам нужно использовать расширение, например .png или .jpg, но главное - создать набор изображений внутри xcassets, а затем использовать этот набор изображений внутри раскадровки. Если все сделано правильно, не должно быть никаких забав, таких как изображение, которое не отображается, или экран запуска, работающий только некоторое время (требующий перезагрузки).
источник
В моем конкретном случае заставка работала для симулятора и других устройств, но перестала работать для одного конкретного устройства. Это привело меня к мысли, что это были некоторые данные кэширования, хранящиеся в xcode (v10 и iPhone 7 v12.1).
Я удалил производные данные по адресу:
~/Library/Developer/Xcode/DerivedData/
только очистка содержимого папки, но не удаление папки. Затем я перезагрузил Mac и iPhone, очистил и перестроил проект, и теперь он появляется.Я не уверен, было ли все это необходимо, но я не хотел тратить больше времени на его сужение, поэтому вышеупомянутый подход кувалдой сработал для меня. Но, конечно, это всегда зависит от вашей конкретной ситуации - моя была специфической для устройства; для других это может быть фактическое изображение или макет экрана запуска и т. д.
источник
Моя проблема.
Причина: я переименовал изображения после перетаскивания в Xcode. Решение: не переименовывайте изображения после перетаскивания в Xcode. Это создает проблемы для понимания Xcode. Переименуйте изображения перед перетаскиванием / добавлением в Xcode.
Надеюсь, это поможет вам!
источник
Я только что понял это. Изображение при запуске не отображается, при запуске на устройстве (iPhone 6, 7+) или testFlight появляется белый экран. Исправлено: Переименовано в «Landing_screen.png», чтобы просто «Landing_screen» удаляло часть .png. Значок изображения в XCode изменился на белый значок, и в раскадровке экрана запуска изображение теперь появляется как вопросительный знак. Теперь появляется изображение запуска, а не белый экран. Мои настройки: я использую Swift 3.1 с Xcode 8.3.1. В LaunchScreen.storyboard я добавил простой вид изображения и растянул изображение, чтобы оно соответствовало контроллеру вида. Я установил автоматические ограничения макета Top / Bottom / Leading / Trailing space на superview на 0 - см. Изображение ниже:
источник
В моем случае оказалось, что у меня есть некоторые представления, все еще связанные с контроллером представления, который теперь был просто базовым контроллером представления. Если я щелкаю кнопкой мыши на представлении, я вижу выходные с предупреждениями, однако предупреждения не появляются в XCode, поэтому у меня возникли проблемы с их поиском.
источник
Это происходит из-за кеширования в XCode / iOS, но есть простое решение: просто переименуйте файл в Assets.xcassets, чтобы кэш восстановился.
источник
Моей первой ошибкой было то, что я создал нормальную .storyboard, переименовал ее и определил как экран запуска в настройках проекта. У меня в этом случае были проблемы с изображением. Кажется, что в этом случае некоторые настройки отсутствуют, поэтому я просто создал новый файл через file-> new и выбрал непосредственно «Launch Screen», и тогда это сработало.
Также я имел в виду, что ограничения макета по какой-то причине не поддерживаются на стартовом экране. Может быть, так было в начале, не уверен, но теперь ограничения должны работать.
Может быть, это кому-нибудь поможет.
источник
Я столкнулся с этой же проблемой при использовании launch-storyboard для показа заставки, и после исследования я обнаружил, что изображение, которое я установил в launch-storyboard, имеет другой размер, и я установил просмотр изображения больше, чем фактический размер изображения.
Таким образом, решение, которое я нашел, это либо установить размер содержимого просмотра изображения в качестве аспектного соответствия, либо установить размер просмотра изображения в качестве размера изображения.
Например, если размер вашего изображения @ 1x равен 200X200, тогда размер изображения должен быть 200X200, чем вы решите эту проблему.
Потому что если вы установите размер изображения больше, чем изображение, то изображение будет накрахмалено, и это не разрешено.
Если у вас все еще есть сомнения, пожалуйста, прокомментируйте здесь и спросите
источник