你好,歡迎來到IOS教程網

 Ios教程網 >> IOS使用技巧 >> IOS技巧綜合 >> ios按鈕點擊後翻轉效果

ios按鈕點擊後翻轉效果

編輯:IOS技巧綜合
[摘要]本文是對ios按鈕點擊後翻轉效果的講解,對學習IOS蘋果軟件開發有所幫助,與大家分享。

代碼是網上找到的,不過找到的時候直接復制下來不能用,稍微整理下,為和我一樣水平的菜鳥觀摩一下下。

(1)引入“QuartzCore.framework”庫,頭部引用。

C代碼
  1. #include<QuartzCore/CoreAnimation.h>

(2)直接上代碼,你懂的。

C代碼
  1. -(IBAction)buttonP:(id)sender{
  2. [selfbuttonAnimation:sender];
  3. }
  4. -(CAAnimation*)animationRotate{
  5. CATransform3DrotationTransform=CATransform3DMakeRotation(M_PI/2,0,1,0);
  6. CABasicAnimation*animation;
  7. animation=[CABasicAnimationanimationWithKeyPath:@"transform"];
  8. animation.toValue=[NSValuevalueWithCATransform3D:rotationTransform];
  9. animation.duration=3;
  10. animation.autoreverses=YES;
  11. animation.cumulative=YES;
  12. animation.repeatCount=1;
  13. animation.beginTime=0.1;
  14. animation.delegate=self;
  15. returnanimation;
  16. }
  17. -(void)buttonAnimation:(id)sender{
  18. UIButton*theButton=sender;
  19. CAAnimation*myAnimationRotate=[selfanimationRotate];
  20. CAAnimationGroup*m_pGroupAnimation;
  21. m_pGroupAnimation=[CAAnimationGroupanimation];
  22. m_pGroupAnimation.delegate=self;
  23. m_pGroupAnimation.removedOnCompletion=NO;
  24. m_pGroupAnimation.duration=10;
  25. m_pGroupAnimation.timingFunction=[CAMediaTimingFunctionfunctionWithName:kCAMediaTimingFunctionEaseInEaseOut];
  26. m_pGroupAnimation.repeatCount=1;
  27. m_pGroupAnimation.fillMode=kCAFillModeForwards;
  28. m_pGroupAnimation.animations=[NSArrayarrayWithObjects:myAnimationRotate,nil];
  29. [theButton.layeraddAnimation:m_pGroupAnimationforKey:@"animationRotate"];
  30. }
  31. -(void)animationDidStop:(CAAnimation*)animfinished:(BOOL)flag{
  32. //todo
  33. }

PS:

CATransform3DMakeRotation(M_PI/2,0,1,0);第一個參數是旋轉的角度,有一點需要著名,就是對象回按照你設定的角度的最短距離去旋轉,後面三個參數分別是xyz(-1~1之間的值)代表的一個向量值。順時針或者逆時針旋轉尚未搞定具體是什麼參數來控制的,有知道的朋友提醒下,謝謝!

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved