2012-02-11 2 views
3

Можно ли анимировать UIButton?Анимация UIButton

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

Я пробовал анимировать UIImages, но я не знаю, можно ли анимировать UIButton.

ответ

3

UIView экземпляр должен быть анимированным с [UIView animateWithDuration:animations:]. Поскольку UIButton подкласс UIView, я не предвижу каких-либо проблем ...

3

Как уже говорилось UIButton экземпляр должен быть анимируемым, как сво подкласс UIView. В приведенном ниже коде будет перемещаться ваш UIButton назад, то есть влево-вправо 20 пикселей в 10 раз. В основном я объединяю 2 анимации вместе.

- (void)startLeftRightAnimation 
{ 
[UIView animateWithDuration:0.5 
         delay:0 
        options:UIViewAnimationOptionCurveEaseIn 
        animations:^(void) 
    { 
     [self.button setFrame:CGRectMake(self.logo.frame.origin.x-20,self.logo.frame.origin.y,self.logo.frame.size.width,self.logo.frame.size.height)]; 
    } 
        completion:^(BOOL finished) 
    { 
     if(finished) 
     { 
      [UIView animateWithDuration:0.5 
         delay:0 
        options:UIViewAnimationOptionCurveEaseIn 
        animations:^(void) 
      { 
       [self.button setFrame:CGRectMake(self.logo.frame.origin.x+40,self.logo.frame.origin.y,self.logo.frame.size.width,self.logo.frame.size.height)]; 
       [self startLeftRightAnimation]; 
      } 
        completion:^(BOOL finished) 
     { 
     if(finished) 
     { 
     } 
    }]; 
}