Создание Экрана Запуска.xib для iOS8 (... iOS11, Swift 4 и LaunchScreen.раскадровка)

Я только что узнал, что для того, чтобы иметь описание для вашего приложения в app store, скажите: "это приложение оптимизировано для iPhone 6 и iPhone 6 Plus."вам нужно использовать файл launch XIB или раскадровки для ваших изображений запуска (per [Apple][1]).

Итак, я создал новый экран запуска xib, и теперь я немного, но так как я обычно делаю все в коде и не использую interface builder. Я удалил метку по умолчанию, которая вставлена и отброшена UIImageView в вид. Теперь мне интересно, как бы я:

1) сказать UIImageView для изменения размера под размер любого экрана на

2) Скажите UIImageView, чтобы выбрать ImageA, если 3,5-дюймовый экран работает приложение или ImageB, если 4-дюймовый экран работает приложение и т.д. так далее.

по сути, я просто пытаюсь сделать запуск .xib для имитации поведения, как экран запуска работает нормально. Был бы признателен, если бы кто-нибудь мог оказать некоторую помощь в этом!

4 ответов


У вас есть два варианта:

  1. вы используете autolayout и даете imageview полноэкранный вид (расстояние до верхней, нижней, левой и правой равно 0). Однако это приведет к обрезке изображения для определенных размеров экрана, чего вы можете не захотеть. Поэтому вы можете рассмотреть (2)

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


Я нашел ответ полезным.

старые шаги вкратце для создания LaunchScreen xib для iOS 8 are ниже новые шаги.

со ссылкой на XCode 9, Swift 3 или Swift 4 и LaunchScreen.раскадровка ниже приведены новые шаги.

первый шаг-создать два изображения для портретного и ландшафтного режима splash (png или jpeg ) в вашем любимом графическом программном обеспечении. ( Если ваше приложение поддерживает только портретный режим, Вы можете пропустить изображение и настройки ландшафтного режима. )

портретный режим изображения :-

создайте изображение " splash-portrait "с вашим собственным полным фоном для размера"width 1125 x height 2436". Обратите внимание, что фон будет клип на различных размерах устройств.

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

изображение ландшафтного режима: -

создать образ 'заставка-пейзаж с полный фон размер "ширина 2436 х высота 1125". Обратите внимание, что фон будет клип на различных размерах устройств.

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

после того, как образы готовы, вы можете добавить его в xcassets или сохранить в ресурс.

Теперь перейдите к следующим шагам.

1)" launchscreen раскадровка " уже создана с новым проектом. Открыть его.

2) добавить изображение на вид.

3) Установите выше сохраненное изображение "splash-portrait"в Источник изображения.

4) Установите вид изображения "режим содержимого" изображения как "заливка аспекта".

5) Добавить 4 ограничения вида изображения для Верхнего, Нижнего, Трейлинг и ведущий к Superview.

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

на пейзаж поддержка режима, выполните следующие дополнительные шаги. (вы можете сослаться на полный ответ @Sakiboy на https://stackoverflow.com/a/46089856/2641380 )

6) Нажмите кнопку + рядом с источником представления изображения, настроенным на Шаге 3.

7) из всплывающего окна, которое теперь отображается выберите обычный для обоих Селекторы ширины и высоты. Это указывает новый адаптивный набор для iPads, которые находятся в ландшафте. Появится новое поле источника изображения с заголовком WR hR. Добавьте изображение "splash-landscape" в поле источника изображения WR hR, чтобы раскадровка знала, как использовать другое изображение в ландшафте.

8) Теперь нам нужно добавить поддержку для устройств "iphone plus", когда в ландшафте. Поэтому нажмите кнопку + рядом с полем Источник изображения еще раз.

9) на этот раз выберите compact для высота и регулярн для селекторов ширины. Это указание нового адаптивного набора для устройств "iPhone plus", которые находятся в ландшафте. Появится новое поле источника изображения с заголовком wR hC.

10) Добавьте изображение " splash-landscape "в поле источника изображения wR hC, чтобы раскадровка знала, что использовать другое изображение, когда в ландшафте на"устройстве iPhone plus".

поскольку устройства iPad являются "обычными для ширины и высоты", мы увидим изображение "splash-landscape" в iPad для портретного и ландшафтного режима. Ширина 860 для отображаемого содержимого в изображении "splash-landscape" будет отображаться полное содержимое как в портретном, так и в ландшафтном режиме.

старые шаги вкратце для создания LaunchScreen xib для iOS 8.

1) создайте новый "LaunchScreen xib" из нового файла --> пользовательский интерфейс --> экран запуска ( сохранить автоматический макет ).

2) Добавьте представление изображения в xib --> view (main view).

3) установить заставку ему (изображение не должно быть в файле assets).

4) Установите изображение как "аспект Fit" (если требуется ).

5) вы также можете изменить цвет фона "view" (super view) как можно ближе к цвету фона изображения.

6) выберите вид изображения, нажмите из меню-редактор-pin-Нижний пробел, чтобы супер вид.

7) это покажет красный знак ошибки рядом с "view" (super view of image view ).

8) нажмите на отметке, вы увидите приблизительный две ошибки автоматической компоновки.

9) при нажатии на ошибку вы найдете меню с автоматическим исправлением ошибок макета.

10) при исправлении ошибок вы найдете всего четыре "ограничения" с "вертикальным" и "горизонтальным" пространством между супервизором и изображением.

11) Теперь вы можете протестировать их в различных устройствах и тренажерах.

с уважением.


вы можете изменить размер изображения, установив ограничение на верхний, нижний, передний и задний края супервизора. Просто нажмите imageview и выберите Editor - >Pin в верхнем контекстном меню. Вы также можете установить аспекты UIImageView, щелкнув его и установив его, например, "Aspect Fit". Убедитесь, что ImageView охватывает весь экран перед установкой ограничений, иначе вам придется изменить ограничения.

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

удачи! Эрик!--1-->


запуск xib не может иметь настраиваемый класс, так как ваше приложение не запускается при его отображении. В итоге я сделал следующее:--1-->

  1. используйте функцию калибровки класс
  2. создать 3 изображения пользовательского интерфейса (по одному на класс размеров)
  3. используйте auto layout с ограничениями, которые применяются к каждому классу размеров

поэтому при отображении одного типа устройства ограничения ширины и высоты двух других UIImageView устанавливаются в 0