IOS 學習總結之動畫
阿新 • • 發佈:2019-01-23
別人總結的一篇關於動畫的文章,感覺不錯,轉載一下
UIView的,翻轉、旋轉,偏移,翻頁,縮放,取反的動畫效果 翻轉的動畫 //開始動畫 [UIView beginAnimations:@"doflip" context:nil]; //設定時常 [UIView setAnimationDuration:1]; //設定動畫淡入淡出 [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut]; //設定代理 [UIView setAnimationDelegate:self]; //設定翻轉方向 [UIView setAnimationTransition: UIViewAnimationTransitionFlipFromLeft forView:manImageView cache:YES]; //動畫結束 [UIView commitAnimations]; 旋轉動畫 建立一個CGAffineTransform transform物件 CGAffineTransform transform; //設定旋轉度數 transform = CGAffineTransformRotate(manImageView.transform,M_PI/6.0); //動畫開始 [UIView beginAnimations:@"rotate" context:nil ]; //動畫時常 [UIView setAnimationDuration:2]; //新增代理 [UIView setAnimationDelegate:self]; //獲取transform的值 [manImageView setTransform:transform]; //關閉動畫 [UIView commitAnimations]; 偏移動畫 [UIView beginAnimations:@"move" context:nil]; [UIView setAnimationDuration:2]; [UIView setAnimationDelegate:self]; //改變它的frame的x,y的值 manImageView.frame=CGRectMake(100,100, 120,100); [UIView commitAnimations]; 翻頁動畫 [UIView beginAnimations:@"curlUp" context:nil]; [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];//指定動畫曲線型別,該列舉是預設的,線性的是勻速的 //設定動畫時常 [UIView setAnimationDuration:1]; [UIView setAnimationDelegate:self]; //設定翻頁的方向 [UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:manImageView cache:YES]; //關閉動畫 [UIView commitAnimations]; 縮放動畫 CGAffineTransform transform; transform = CGAffineTransformScale(manImageView.transform,1.2,1.2); [UIView beginAnimations:@"scale" context:nil]; [UIView setAnimationDuration:2]; [UIView setAnimationDelegate:self]; [manImageView setTransform:transform]; [UIView commitAnimations]; 取反的動畫效果是根據當前的動畫取他的相反的動畫 CGAffineTransform transform; transform=CGAffineTransformInvert(manImageView.transform); [UIView beginAnimations:@"Invert" context:nil]; [UIView setAnimationDuration:2];//動畫時常 [UIView setAnimationDelegate:self]; [manImageView setTransform:transform];//獲取改變後的view的transform [UIView commitAnimations];//關閉動畫