2012-12-20 38 views
2

可能重複:
How to use CGAffineTransformMakeRotation?動畫點擊ImageView的,涼爽的小爆破

我有一個就像一個按鈕的ImageView的,我正在尋找一種方式來顯示用戶他點擊它,我想出了這個代碼,將它旋轉一點:

float angle = 60.0; 
[UIView animateWithDuration:0.5f animations:^{ 
    customimageView.transform = CGAffineTransformMakeRotation(angle); 
}]; 

但它的不做我正在尋找fpr的行爲。 任何人都知道我可以讓imagekinda放大(或放大/放大)到它的大小1.5點擊它?這裏有什麼樣的動畫? 隨時分享您在這種情況下認爲很酷的行爲。

謝謝。

作爲一個方面說明,我怎樣才能讓它旋轉整圈?我嘗試傳遞360但它沒有這樣做?

回答

2

您可以隨時CGAffineTransformConcat你的旋轉與縮放變換,與CGAffineTransformMakeScale製成。

如果你有興趣的另一個按鈕按下的效果,我需要的東西很酷,太,並在「悸動」動畫解決如下:

BOOL keepThrobbing = NO; 

-(void)buttonThrob:(CGFloat)inset { 

    UIViewAnimationOptions opts = UIViewAnimationOptionBeginFromCurrentState|UIViewAnimationOptionAllowUserInteraction; 

    [UIView animateWithDuration:0.2 delay:0.0 options:opts animations:^{ 
     self.button.frame = CGRectInset(self.button.frame, inset, inset); 
    } completion:^(BOOL finished) { 
     [UIView animateWithDuration:0.2 delay:0.0 options:opts animations:^{ 
      self.button.frame = CGRectInset(self.button.frame, -inset, -inset); 
     } completion:^(BOOL finished) { 
      if (finished && keepThrobbing) { 
       [self buttonThrob:inset]; 
      } 
     }]; 
    }]; 
} 

這樣稱呼它:

keepThrobbing = YES; 
[self buttonThrob:10.0]; // expand/shrink by 10px in x and y 
0

使用CGAffineTransformMakeScale來更改比例。

CustomimageView.transform = CGAffineTransformMakeScale(1.5,1.5);

0

您可以將兩個仿射變換與CGAffineTransformConcat:

[customimageView setTransform:CGAffineTransformConcat(CGAffineTransformMakeScale(1.5, 1.5), CGAffineTransformMakeRotation(angle))]; 
+0

感謝您注意到我的重複帖子,我刪除了它。不知道這是怎麼發生的。我打算做一個小修改。 – danh