2014-10-11 3 views
0

У меня есть UIImageView, который перемещается при загрузке представления. Сначала будет идти +100, а затем установить BOOL для завершения.Как я могу повторить эту анимацию?

Когда BOOL установлен на завершение, он выполнит еще одну анимацию, которая вернет UIImageView в исходное положение. Когда мой UIImageView вернется в исходное положение, он должен снова начать все это. Это повторение должно длиться вечно! Как я могу это сделать?

Вот мой код:

[UIView animateWithDuration:0.5 
    animations:^ 

    { 
     //move up 
     Person.center = CGPointMake(Person.center.x, Person.center.y +100); 

    } 
        completion:^(BOOL completed) 
    { 
     if (completed) 
     { 
      //completed move up..now move down 
      [UIView animateWithDuration:0.5 
           animations:^ 
       { 
        Person.center = CGPointMake(Person.center.x, Person.center.y -100); 
       } 

       ]; 
     } 
    }]; 
+0

я добавил answare, пожалуйста, проверьте .... – hmdeep

ответ

0

Попробуйте этот код ...

-(void)repeatForever 
{ 
[UIView animateWithDuration:0.5 
       animations:^ 

{ 
    //move up 
    Person.center = CGPointMake(Person.center.x, Person.center.y +100); 

} 
       completion:^(BOOL completed) 
{ 
    if (completed) 
    { 
     //completed move up..now move down 
     [UIView animateWithDuration:0.5 animations:^{ 

      Person.center = CGPointMake(Person.center.x, Person.center.y -100); 

     } completion:^(BOOL finished) { 
      [self repeatForever]; 
     }]; 
    } 
}]; 

}

+0

Спасибо очень много! – Sam0711er

+0

Еще один вопрос: когда я покидаю приложение и возвращаю его, анимация останавливается, и мое изображение находится именно там. Как мне изменить это, чтобы потом автозапуска анимации? – Sam0711er

+0

этот метод все еще вызывается, когда вы повторно находитесь в точке останова app.add и проверяете его .... – hmdeep

Смежные вопросы