Я хочу, чтобы в моем приложении отображался простой экран запуска, созданный с использованием Xcode 6.0.1.
Я добавил экран запуска двумя способами: в качестве XIB (с именем по умолчанию LaunchScreen.xib) и в качестве образа запуска, установленного в xcassets.
Я убедился, что мой «Файл экрана запуска» настроен на LaunchScreen.xib.
Я смоделировал каждое доступное устройство (например, «iPhone5 iOS8» / «iPhone5s iOS8» / «iPhone6 iOS8». Обратите внимание, что в симуляторе доступна только iOS 8).
ios8
xcode6
xcasset
launchimage
Эдди Хартман
источник
источник
Ответы:
Так что это было довольно больно для чего-то, что должно быть тривиальным. Вот что я сделал:
Использовать xcassets
Я решил использовать .xcassets против .xib для запуска. Я удалил .xib. Если у вас уже есть images.xcassets в вашем проекте, тогда отлично, в противном случае вы можете добавить один из File> New> file:
Создать набор изображений запуска
Теперь создайте как минимум набор образа запуска и набор значков в файле .xcassets, щелкнув правой кнопкой мыши в области навигатора.
Обновите значки приложений и запустите настройки изображений
Затем я убедился, что «значок приложения и наборы изображений» в моей цели соответствуют приведенным ниже.
Очень важно: убедитесь, что параметр «Файл экрана запуска» пуст.
Добавьте изображения
Наконец, что не менее важно, терминология, используемая Apple для выбора устройств, сбивает с толку. Сначала я думал, что, поскольку я развертываю только для iOS8 (iPhone Portrait), я могу сделать это и просто вставить образы запуска iPhone 6 и iPhone 6+:
Я быстро понял, что это не так, и получил предупреждение: «Требуется образ запуска iPhone Retina (4 дюйма) для iOS 7.0 и более поздних версий».
Поэтому мне пришлось выбрать iPhone под iOS 7.0 и выше, а также добавить изображение для iPhone 5s.
Поэтому, чтобы выяснить, какие флажки ставить справа, не задавайте вопрос: какова моя минимальная ориентация iOS и устройства и устройства, а задайте вопрос:
Какие устройства могут поддерживать мою минимальную iOS? Теперь, какой минимальный iOS поддерживается на этих устройствах? И убедитесь, что вы отметили все эти поля. Поэтому я нацеливаюсь на iPhone 5s, 6 и 6 Plus на 8.0, но, учитывая, что iPhone 5s может существовать с 7.0, мне нужно установить флажок 7.0, чтобы показать заполнитель изображения. Другими словами, флажок (iOS) справа показывает минимальную версию iOS, доступную для этого устройства, и вам нужно щелкнуть ее, чтобы отобразить заполнитель изображения и поместить изображение, независимо от того, развертываете ли вы в этой версии iOS или нет ,
Надеюсь, это кому-нибудь поможет.
источник
Значение
LaunchScreen.xib
и информацияLaunch screen interface file base name
из моего опыта являются заполнителями, которые создаются при создании проекта. Если вы хотите использоватьImages.xcassets
исключительно для стартовых экранов, удалитеLaunchScreen.xib
иinfo.plist
элемент, и элемент.Если вы предоставите
info.plist
настройку, ваше приложение будет использовать,xib
а не вашImages.xcassets
источник
Xcode 8:
Изображения, используемые в LaunchScreen.xib, не должны быть на .xcassets, попробуйте добавить их в пакет.
Похоже, что к моменту загрузки .xib изображения в .xcassets еще не доступны.
РЕДАКТИРОВАТЬ: По какой-то непрозрачной причине после добавления некоторых локализаций стартовый экран перестал работать, теперь он работает с изображением из ресурсов, очень странно.
источник
/Library/Caches/Snapshots/<<app_bundle>>/
завершено до загрузки вспомогательных файлов, включая пользовательские шрифты и каталог ресурсов.Моим решением было создать все образы запуска.
Затем я установил Launch Images Source для актива LaunchImage и оставил файл экрана запуска пустым.
Наконец, если проект не имеет Launch Screen.xib, добавьте этот файл и оставьте его как есть.
источник
Для меня это сработало, когда я удалил приложение, а затем перезапустил симулятор. При повторной установке образ запуска появился, как и ожидалось. Это также работало на реальном устройстве.
источник
Для людей, которые используют
Asset Catalog's Launch Image
, как я понял это самым сложным образом, у меня был такой сценарий, где мне сначала далиjpg
файл, затем я попросил их преобразовать его вPNG
.Я настолько доверял им, что сначала я искал в Интернете, почему образ запуска не показывал, и делал все решения безрезультатно, затем я попытался вернуть старый образ запуска и работал нормально, именно там я подумал, что я иметь не правильный
PNG
файл.TL; DR: убедитесь, что вы действительно используете правильный файл PNG, а не файл с переименованным расширением.
источник
Удаление "Базовое имя файла интерфейса экрана запуска" из файла Info.plist И удаление "Launch Screen.xib" работало для меня.
источник
Простое удаление и переустановка приложения работало на меня:
Тестирование в симуляторе
Тестирование на устройстве
источник
Проблема с принятым ответом состоит в том, что если вы не установите файл экрана запуска, ваше приложение будет в режиме масштабирования на таких устройствах, как iPhone 6 & 6+ => размытый рендеринг.
Ниже приведено то, что я сделал, чтобы на каждом устройстве было полнофункциональное решение (я ориентируюсь на iOS 7.1 и использую Xcode 8) (действительно, я сходил с ума от этой проблемы с масштабированием)
1. Подготовьте свои .xcassets
Чтобы упростить его, я использую векторный файл .PDF. Это очень удобно и избегайте создания нескольких изображений для каждого разрешения (1x, 2x, 3x ...). Я также предполагаю, что вы уже создали свои xcassets.
2. Создайте свой файл Launch Screen
3. Добавьте свое изображение в файл экрана запуска
4. Добавьте файл экрана запуска к своей цели
В общих чертах, в ваших общих свойствах Target, обратитесь к файлу Launch Screen.
Запустите ваше приложение, и ваш экран заставки должен отображаться. Попробуйте также на iPhone6 и iPhone6 +, и ваше приложение должно корректно отображаться без увеличения масштаба (файл Launch Screen предназначен для этого).
источник
После нескольких часов разочарования я решил использовать этот способ. Это работает и для iPhone и для iPad (на Xcode 6.1)
1 картинка стоит больше тысячи слов. Пожалуйста, посмотрите на ниже:
источник
Я читал об ошибке в Xcode 6, которая не позволяет приложениям отображать стартовое изображение только в альбомной ориентации.
Попробуйте установить изображения и ориентацию в Images.xcassets:
источник
Существует ошибка, из-за которой изображения запуска Xcode 6, хранящиеся в файлах активов, приводят к тому, что приложения только для iphone landscape на iOS7 / iOS8 отображают черное изображение запуска. iPad работает нормально.
http://www.raywenderlich.com/forums/viewtopic.php?f=2&t=10868
Решение: используйте новый Launchscreen.xib для ios8 + и выше. (это намного лучше)
Чтобы устройства ios7 работали, вы просто отключаете источник изображений запуска и используете имена файлов образов запуска старой школы в plist
Больно но работает. В
источник
Я перепробовал все, но решение было очень простым. Просто используйте файл .jpg вместо .png на LaunchScreen.storyboard. Похоже, что iOS не отображает файл .png или относительно большой размер изображения на экране запуска.
источник
Сделайте, что Spectravideo328 ответил и:
Попробуйте ОТКЛЮЧИТЬ окно iOS 7 и более поздние версии и ПРОВЕРЬТЕ окно iOS 6 и более ранние в каталоге ресурсов. Кажется, есть ошибка с iOS 7 Launch Image. (Оба имеют одинаковые образы запуска, за исключением изображения 320x480)
Надеюсь, это поможет, это помогло мне!
источник
Я установил «LaunchImage» в своем каталоге активов и просто очистил поле «Launch Screen» и вуаля! У меня появились изображения запуска ...
источник
Один из способов - добавить «Экран запуска» (
LaunchScreen.xib
), вставить изображение,UIImageView
а затем установить его в « Горизонтальный центр в контейнере » и « Вертикальный центр в контейнере » в «Выравнивание», если вы используете автоматическую компоновку.Экран: http://i.stack.imgur.com/CfnHT.png
Не забудьте поместить
LaunchScreen.xib
в «Файл экрана запуска».источник
У меня была та же проблема после того, как я начал использовать Xcode 6.1 и изменил свои изображения запуска. У меня были все изображения в каталоге активов. Я бы получил только черный экран вместо ожидаемого статического изображения. Попробовав столько всего, я понял, что проблема в том, что в Каталоге активов в представлении FileInspector отмечена галочка «Целевое членство» в проекте. Отметив галочкой ON, волшебство появилось, и изображение начало появляться при запуске приложения.
источник
Я предлагаю вам выбрать Launch Image Source как Image.Assets. Создайте объекты-заставки в папке Image.assts.
Эталонное изображение для правильной конфигурации:
источник
Я попытался открыть новый проект и проделал те же шаги, что и для настройки экрана запуска.
По умолчанию файл .xib был установлен как «Файл запуска», и белый экран с меткой показывался в симуляторе в течение полсекунды.
Затем я запускаю «Источник изображений» и устанавливаю его на Images.xcassets, который создается с фоновыми изображениями, которые я добавил в проект. (пока все хорошо)
Запустите симулятор, и изображения запуска не отображаются ...
После удаления указанного «Файл экрана запуска» и очистки: Product -> Clean из верхнего меню, наконец, появляются изображения запуска.
Может это поможет?
источник
Существует файл 'LaunchScreen.xib', автоматически добавленный в ваш проект. При удалении xCode будет использоваться изображения по умолчанию в Images.xcassets.
отредактировано, чтобы добавить, перейдите к значкам приложений и запустите изображения Файл экрана запуска должен быть пустым / emtpy
источник
У меня была очень странная ошибка. Очевидно, мой исходный образ был установлен только для отладочной конфигурации, а не для выпуска. Это привело к тому, что мой экран запуска появился при запуске отладочной конфигурации, но когда я переключился на выпуск, я просто получил черный экран.
Я исправил это, когда изменил конфигурацию сборки, чтобы появилась кнопка «Запустить источник изображения», и мне пришлось снова выбрать «Использовать каталог активов».
Для тех, кому интересно, вот как выглядел мой project.pbxproj.
источник
По какой-то причине мне пришлось изменить местоположение каталога активов на «относительно проекта», чтобы это работало.
Я также удалил приложение со своего телефона и переустановил, но, вероятно, это сделал «родственник проекта».
источник
* (Xcode 7.2 / Deployment Target 7.0 / Только альбомная ориентация) *
Я знаю, это старый вопрос, но с Xcode 7.2 я все еще получаю сообщение, и я исправил это:
1) Выберите ПОРТРЕТ и оба пейзажа. Добавить «Запустить источник изображений» и «Файл экрана запуска»
2) В своем образе запуска выберите iPhone «8.0 и более поздние версии» и «7.0 и более поздние версии».
3) Добавьте этот код в ваше приложение.
4) Добавьте это на свой ViewController
Я надеюсь помочь кому-то еще.
источник
Это работает для меня. Нажмите LaunchScreen.storyboard, затем на правой панели вы можете установить флажок «Is Initial View Controller».
LaunchScreen.storyboard -> является начальным контроллером представления
источник
Я только что понял это. Изображение при запуске не отображается, при запуске на устройстве (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.
источник
Если вы изменили свой стартовый образ с предыдущего изображения, обратите внимание на следующее:
Вероятно, из-за кэширования образа запуска, выполненного iOS. Перезагрузка устройства должна решить проблему.
источник
Я столкнулся с этой ошибкой и в моем приложении только для ландшафта. Следующее решение Карлодурсо работает:
источник
Для меня это работает, когда я удаляю
LaunchScreen.xib
и меняю его на файл раскадровкиLaunchScreen.storyboard
.источник