it-swarm-ru.tech

Реализация заставки в iOS

Я новичок в разработке Какао, Objective-C и iOS.

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

41
Patrice Cote

См. Изображения запуска приложения (по умолчанию) в Руководстве по программированию приложений iOS.

Также следует отметить, что Apple посоветовала НЕ использовать образ запуска в качестве заставки . Apple HIG

40
Espresso

Вы можете легко реализовать свой вид поверх основного вида, но в вашей appDelegate. Например, если вы хотите, чтобы всплывающее изображение исчезло на главном экране: (или изображение по умолчанию, которое кажется исчезающим: просто поместите то же изображение на заставку и на экран по умолчанию) . Это также дает вам правильная ориентация, пока это основной вид.

Просто добавьте его в свой метод application:(UIApplication *)application didFinishLaunchingWithOptions::

 UIImageView*imageView=[[UIImageView alloc]initWithImage:[UIImage imageNamed:@"your_default_image_or_another.png"]];
[[firstViewController view] addSubview:imageView];
[[firstViewController view] bringSubviewToFront:imageView];

// as usual
[self.window makeKeyAndVisible];

//now fade out splash image
[UIView transitionWithView:self.window duration:1.0f options:UIViewAnimationOptionTransitionNone animations:^(void){imageView.alpha=0.0f;} completion:^(BOOL finished){[imageView removeFromSuperview];}];
32
NightCoder

Поскольку @Espresso разместил ссылку, я просто хочу объяснить это вам.

Если вы просто поместите изображение с именем Default.png внутри вашего проекта, то оно будет использоваться для заставки. Однако вы можете использовать другое имя изображения, явно указав его в файле plist.

12
Waqas Raja

Я знаю, что даю ответ почти на один год, но это может помочь кому-то еще.

Я только что обнаружил, что вы можете сделать это в XCode4! Что делает это довольно простым процессом сейчас.

  1. Выберите свой проект в представлении навигации 
  2. под Цели выберите ваше приложение
  3. Выберите вкладку «Сводка»
  4. Прокрутите вниз, и вы увидите место, где можно добавить свои заставки
  5. Щелкните правой кнопкой мыши на полях, чтобы выбрать файл
11
Bharat

Другие ответы хороши, но я хотел бы добавить, что для приложений iPhone ваш Default.png должен быть 320x480, а для дисплеев сетчатки необходимо добавить [email protected] 640x960.

6
nylund

В XCode 4 вы можете нажать на Название проекта (родитель в иерархии слева).

Затем на вкладке Сводка , в iPhone и iPad вы сможете выбрать Запустить изображения для каждой формы файловой системы.

4
Flaviu

Чтобы добавить заставку, просто замените все изображения по умолчанию ([email protected], ....) своим изображением-заставкой с тем же именем по умолчанию (для всех типов аппаратного дисплея) . Чтобы увеличить продолжительность заставки экран, в методе appDelegate

didFinishLaunchingWithOptions 

просто спите основной поток на время, которое вы хотите:

[NSThread SleepForTimeInterval:(Your time interval)];

вы также можете использовать сон (временной интервал) в

didFinishLaunchingWithOptions

sleep(3);
3
user2834776

Мне нужно было просто решить эту проблему, и я решил опубликовать обновление.

Я обнаружил, что должен был установить Поддерживаемые Ориентации Интерфейса в Info.plist, прежде чем он будет работать правильно.

Я также нашел эту статью на iOSDeveloperTips.com довольно полезной: Управление несколькими изображениями запуска

3
HaemEternal

Вам нужно всего лишь добавить три изображения для iPhone, iPhone 5 и iPad с именами Default.png, [email protected] и [email protected] Теперь четкость изображений зависит от размера, который вы берете. Вы должны взять стандартные размеры.

2
Ashutosh

Чтобы добавить заставку, сначала добавьте это изображение в свой проект, а затем добавьте следующий код в метод AppDelegate в методе didFinishLaunching

[NSThread SleepForTimeInterval:(Time interval)];
1
Ashwin H

В мире iOS это называется - Launch Screen и это общий шаблон.

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

Например, когда вы создаете новый проект с одним представлением, LaunchScreen.storyboard генерируется автоматически. Чтобы изменить это просто перейдите <Project> -> General -> App Icons and Launch Images

0
yoAlex5