Как я могу сделать образ запуска iPhone легко?

Согласно линии руководства Apple, изображение/заставка для запуска приложения iPhone должно быть предварительным статическим изображением, которое похоже на первый экран приложения.

Вот некоторые ссылки на документацию Apple об этом:

1) Запуск изображений, руководство по человеческому интерфейсу iOS:

https://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/MobileHIG/IconsImages/IconsImages.html#//apple_ref/doc/uid/TP40006556-CH14-SW5

2) Запуск приложения (по умолчанию) Изображения, руководство по программированию приложений iOS:

https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/App-RelatedResources/App-RelatedResources.html#//apple_ref/doc/uid/TP40007072-CH6-SW12

Мне просто интересно, как я могу легко создать такой образ запуска. В большинстве случаев кажется, что образ запуска должен представлять собой комбинацию пустой строки состояния + навигационной панели + пустой таблицы/представления + панели вкладок, и каждый из них должен отображаться с предопределенной цветовой схемой iOS.

Но я не могу найти документацию о том, как я должен это делать, и не могу найти какую-либо запись в Xcode, которая, похоже, связана с этим. Есть ли официальный инструмент Apple для рендеринга образа запуска? Или все разработчики приложений просто используют некоторые макеты iPhone для управления + Photoshop для этого?

Любая помощь приветствуется. Спасибо.

Ответы

Ответ 1

Это не будет проблемой, создайте статический XIB файл вашего основного экрана (пустая панель вкладок, пустая панель навигации) или что-то еще. Только фоны без каких-либо элементов или меток, размещенных на них.

Вы можете запустить это "пустое" приложение в iPhone Simulator, у которого есть встроенная функция скриншота. С помощью дополнительного программного обеспечения, такого как iPhone Simulator Cropper, вы можете обрезать изображение до нужного размера.

Это мой подход сделать это.

Ответ 2

Так как я нахожу это громоздким для удаления содержимого в файле nib, я использую кодовый подход.

Код для каждого проекта отличается. Но вы поймете эту идею.

// uncomment to take a screenshot for the launch image
//#define SCREENSHOTMODE 

- (void)viewDidLoad {
    [super viewDidLoad];
    /* regular stuff */
#ifdef SCREENSHOTMODE
        self.navigationItem.leftBarButtonItem = nil;
        self.navigationItem.rightBarButtonItem = nil;
        self.title = nil;
        [self deactivateContentForSubviewsInView:self.view];
#endif
}


#ifdef SCREENSHOTMODE
- (void)deactivateContentForSubviewsInView:(UIView *)contentView {
    for (UIView *aView in contentView.subviews) {
        if ([aView isKindOfClass:[UILabel class]]) {
            [(UILabel *)aView setText:nil];
        }
        else if ([aView isKindOfClass:[UITableView class]]) {
            [(UITableView *)aView setDataSource:nil];
        }
        else if ([aView isKindOfClass:[UIToolbar class]]) {
            [(UIToolbar *)aView setItems:nil];
        }
        else if ([aView isKindOfClass:[UIImageView class]]) {
            [(UIImageView *)aView setImage:nil];
        }
        else if ([aView isKindOfClass:[UIView class]]) {
            // i often put views in UIViews to group them
            [self deactivateContentForSubviewsInView:aView];
        }
    }
}
#endif

Если у вас есть только несколько объектов, вы можете просто удалить содержимое своих пользовательских интерфейсов напрямую. Без петель.

Ответ 3

Кажется, для этого не существует такого инструмента, встроенного в Xcode. Я закончил с методом, как сказал Себастьян Wramba выше с небольшой разницей. Я использовал раскадровку Xcode 4.2 для дизайна пользовательского интерфейса моего приложения, вот мои шаги для этого в раскадровке Xcode 4.2:

  • Перетащите пустой контроллер представления из "Библиотеки объектов" в раскадровку

  • Добавить пустую панель навигации/таблицу/панель вкладок/другие компоненты в новую сцену выше в соответствии с вашим начальным расположением экрана

  • Нажмите контроллер представления в раскадровке, в "Attributes Inspector" контроллера вида, есть флажок "Initial Scene: Is Initial View Controller". Проверьте это.

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

  • Установите исходную сцену обратно в реальную начальную сцену, установив флажок "Начальная сцена".

Я по-прежнему буду отмечать решение Sebastian Wramba как ответ на мой вопрос, поскольку общая идея такая же, просто создайте для него выделенный интерфейс в Xcode.

Ответ 4

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

Ответ 5

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

Ответ 6

Легче даже этого. Поднимите изображение, которое вы хотите поместить в качестве заставки на свой телефон. Сохраните изображение в рулоне камеры. Откройте изображение в рулоне камеры. Нажмите на изображение, чтобы получить полный экран. Сделайте снимок экрана. Отправьте это изображение по электронной почте на свой компьютер. Измените окончание файла с PNG на png, это отстой, я знаю:) Добавьте изображение в область Launch Image. Walla!;)

Ответ 7

Вы можете использовать XIB для запуска XOS запуска для создания статических изображений запуска с помощью симулятора, что вам может понадобиться, если вы поддерживаете iOS 7 или ранее.

  • Создайте экран запуска XIB.
  • Выберите сам проект в навигаторе проектов Xcode, а затем в разделе "Общие" > "Информация развертывания" измените поле "Основной интерфейс" на экран запуска XIB. Этот шаг покинет экран запуска XIB в симуляторе, чтобы у вас было время сделать снимок экрана на шаге 4.
  • Запустите приложение в симуляторе.
  • Как только ваш экран запуска появится в симуляторе, выберите "Файл" > "Сохранить снимки экрана".

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

Ответ 8

Если вам нужен простой экран запуска с панелью навигации и панель вкладок, например, мое предложение - использовать файлы запуска. В iOS 8 и более поздних версиях вместо статического изображения запуска можно создать файл XIB или раскадровки.

Подробнее об этом читайте в следующей ссылке: https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/MobileHIG/LaunchImages.html

Ответ 9

I Задайте все вышеперечисленное. однако при повторной отладке это не сработало. Я удаляю приложение из симулятора и iPhone и сразу работал