iOS之動畫(transform和UIView動畫)學習
1、transform 形變
這個是UIView
的屬性,繼承UIView
的控制元件都具有這個屬性
UIImageView *imageview=[[UIImageView alloc]init];
imageview.image=[UIImage imageNamed:@"logo.png"];
//旋轉
imageview.transform=CGAffineTransformRotate(imageview.transform, 45);
//位置移動
imageview.transform=CGAffineTransformTranslate(imageview.transform, 0, 10);
//縮放
imageview.transform=CGAffineTransformScale(imageview.transform, 1.5, 1.5);
//還原
imageview.transform=CGAffineTransformIdentity;
[self.view addSubview:imageview];
2、UIView漸變動畫
//開啟一個執行緒,處理動畫相關的操作
[UIView animateWithDuration:1.0 animations:^{
} completion:^(BOOL finished) {
}];
//開啟一個執行緒,處理動畫相關的操作。
動畫伴隨著速率的變化
/* UIViewAnimationOptionCurveEaseInOut 動畫開始/結束比較緩慢,中間相對較快
UIViewAnimationOptionCurveEaseIn 動畫開始比較緩慢
UIViewAnimationOptionCurveEaseOut 動畫結束比較緩慢
UIViewAnimationOptionCurveLinear 線性---> 勻速 */
[UIView animateWithDuration:1.0 delay:0 options:UIViewAnimationOptionCurveEaseIn|UIViewAnimationOptionTransitionCurlDown animations:^{
} completion:^(BOOL finished) {
//動畫完成後 要執行什麼操作
}];
//彈性動畫
[UIView animateWithDuration:1.0 delay:0 usingSpringWithDamping:0.3 initialSpringVelocity:200 options:UIViewAnimationOptionTransitionCurlDown animations:^{
} completion:^(BOOL finished) {
}];