Исчезновение нескольких изображений на заставке в IOS

Я пытаюсь анимировать несколько изображений для заставки. Я отображаю 3 изображения в качестве заставки. Первое - это изображение заставки по умолчанию, чем при использовании Ui-imageview. Я отображаю 2-е и 3-е места в моем режиме просмотра изображений.

Я хочу, чтобы изображение исчезало при смене заставки. Я пробовал решение NSTimmer, но оно отображало мне прямое 3-е изображение и экран Мэн, чем после того, как я попробовал это решение, чтобы иметь, но оно отображало мне 2-е и 3-е изображение 2 раза один за другим. любая помощь приветствуется

РЕДАКТИРОВАНИЕ /- Никки Предложите мне какое-нибудь решение, но у меня возникла путаница в том, в каком месте я скрыл 2-й вид изображения? Вот мой код

backgroundImageView = [[UIImageView alloc] initWithFrame:self.view.bounds];
backgroundImageView.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;
backgroundImageView.image=[UIImage imageNamed:@"SPLASHSCREEN-2.png"];
backgroundImageView2 = [[UIImageView alloc] initWithFrame:self.view.bounds];
backgroundImageView2.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;
backgroundImageView2.image=[UIImage imageNamed:@"SPLASHSCREEN-3.png"];
[self.view addSubview:backgroundImageView];
[self.view addSubview:backgroundImageView2];
[backgroundImageView2 setHidden:YES];
[self performSelector:@selector(performTransition) withObject:nil afterDelay:1.0];

-(void)performTransition
   {
CATransition *animation3 = [CATransition animation];
[animation3 setDuration:3.0f];
[animation3 setType:kCATransitionReveal];
[animation3 setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
[[backgroundImageView layer] addAnimation:animation3 forKey:@"SwitchToView"];
[backgroundImageView setHidden:YES];
[backgroundImageView2 setHidden:NO];//No animation happen while changing the image view
}

1 ответ

Вы можете создать два ImageView чтобы отображаться в начале и сначала скрыть их. Просто напишите код для анимации:

-(void)performTransition
{  
  CATransition *animation3 =  [CATransition animation];
  [animation3  setDuration:3.0f];
  [animation3  setType:kCATransitionReveal];
  [animation3  setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
  [[backgroundImageView2  layer] addAnimation:animation3 forKey:@"SwitchToView"];
  [backgroundImageView  setHidden:YES];
  [backgroundImageView2  setHidden:NO];//No animation happen while changing the image view
} 

и установите ImageView будет анимироваться, пока он не раскроется. Тип анимации можно изменить, изменив значения [animation3 setType:kCATransitionReveal];, Не забудьте импортировать: #import<QuartzCore/QuartzCore.h>

за сокрытие предыдущего ImageView с анимацией и отображением следующего ImageView с помощью анимации вы можете написать код внутри функции и вызвать эту функцию, используя performSelector и можете добавить желаемый интервал времени.

Другие вопросы по тегам