大学IT网 - 最懂大学生的IT学习网站! QQ资料交流群:367606806
当前位置:大学IT网 > IOS技巧 > ios按钮点击后翻转效果

ios按钮点击后翻转效果

关键词:ios翻转  阅读(3601) 赞(18)

[摘要]本文是对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之间的值)代表的一个向量值。顺时针或者逆时针旋转尚未搞定具体是什么参数来控制的,有知道的朋友提醒下,谢谢!



相关评论