`
gaobusi
  • 浏览: 197133 次
  • 性别: Icon_minigender_1
  • 来自: 安徽
社区版块
存档分类
最新评论
阅读更多

上图先,图上是一个按钮,点击后旋转,代码是网上找到的,不过找到的时候直接复制下来不能用,稍微整理下,为和我一样水平的菜鸟观摩一下下。

 

(1)引入“QuartzCore.framework”库,头部引用。

 

 

#include<QuartzCore/CoreAnimation.h>
 

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

 

 

-(IBAction)buttonP:(id)sender{
    [self buttonAnimation:sender];
}

- (CAAnimation *) animationRotate {
    CATransform3D rotationTransform  = CATransform3DMakeRotation( M_PI/2 , 0 , 1 , 0 );
    CABasicAnimation* animation;
    animation = [CABasicAnimation animationWithKeyPath:@"transform"];
    animation.toValue = [NSValue valueWithCATransform3D:rotationTransform];
    animation.duration = 3;
    animation.autoreverses = YES;
    animation.cumulative = YES;
    animation.repeatCount = 1;
    animation.beginTime = 0.1;
    animation.delegate = self;
    return animation;
}

- (void)buttonAnimation:(id) sender{
    UIButton *theButton = sender;
    CAAnimation *myAnimationRotate = [self animationRotate];
    CAAnimationGroup* m_pGroupAnimation;
    m_pGroupAnimation = [CAAnimationGroup animation];
    m_pGroupAnimation.delegate = self;
    m_pGroupAnimation.removedOnCompletion = NO;
    m_pGroupAnimation.duration = 10;
    m_pGroupAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];   
    m_pGroupAnimation.repeatCount = 1;
    m_pGroupAnimation.fillMode = kCAFillModeForwards;
    m_pGroupAnimation.animations = [NSArray arrayWithObjects:myAnimationRotate, nil];
    [theButton.layer addAnimation:m_pGroupAnimation forKey:@"animationRotate"];
}
  
- (void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag{
    //todo
}
 

PS:

 

CATransform3DMakeRotation( M_PI/2 , 0 , 1 , 0 );第一个参数是旋转的角度,有一点需要著名,就是对象回按照你设定的角度的最短距离去旋转,后面三个参数分别是xyz(-1~1之间的值)代表的一个向量值。顺时针或者逆时针旋转尚未搞定具体是什么参数来控制的,有知道的朋友提醒下,谢谢!

 

 


 

 

  • 大小: 46.2 KB
  • 大小: 38.4 KB
  • 大小: 30.1 KB
分享到:
评论

相关推荐

    ios-点击切换状态の按钮Multi-Button.zip

    多功能按钮,点击变换状态. 喜欢就点个star O(∩_∩)O谢谢 GitHub: https://github.com/qianlishun/MultiButton.git 下载命令: git clone https://github.com/qianlishun/MultiButton.git 使用 ① ...

    ios-卡牌切换效果.zip

    OC语言的一个卡牌切换效果,实现切换和顶部按钮的联动效果。 GitHub传送门:https://github.com/ioswei/AWCardeDemo

    iOS高仿微信相册界面翻转过渡动画效果

    评论界面点击左上角的返回按钮会反方向翻转回图片界面,真正的实现方法,与传统的导航栏过渡其实只有一行代码的区别,下面小编通过本文给大家介绍下ios高仿微信相册界面翻转过渡动画效果,一起看看吧

    IOS实现微信朋友圈相册评论界面的翻转过渡动画

    在图片界面点击右下角的查看评论会翻转到评论界面,评论界面点击左上角的返回按钮会反方向翻转回图片界面,真正的实现方法,与传统的导航栏过渡其实只有一行代码的区别,让我们来看看整体的实现。 首先我们实现图片...

    ios开发记录

    //因为UIImageView的用户可交互性默认是关闭的,所以把按钮放在他身上时,按钮是不能点击的,把可交互性打开以后,按钮就能够被点击 imgView.userInteractionEnabled=YES; enabled授权给 Interaction交互 //将序列...

    支持翻转的形式切换新视图效果

    这是可以支持翻转的形式切换新视图效果的源码,效果实现了支持三种模式效果,其中一种是,当我们点击某个按钮时,按钮就会发生翻转成新视图效果,另一种是当我们点击列表视图的单元时,单元就会发生翻转成新视图效果...

    ImageTransform:演示如何使用视图转换和变换在 iOS 中操作图像

    截屏 概述 这是一个由于代码挑战而创建的项目。 挑战在于观看显示操作两个图像的视频并将其实现为 iOS 应用程序... 在“照片”应用程序中选择了一些照片并调用“发送到”按钮后,您将需要单击操作底部行中的“更多”图

    ADFlipTransition(iPhone源代码)

    支持三种模式,一种是点击按钮,按钮翻转成新视图,一种是点击TableView的cell,cell翻转成新视图,还有一种是点击CollectionView,某个子View翻转成新视图。 [优才 · Code4App]编译测试,适用环境:Xcode 4.5, ...

    SwiftUI-Animations:Instagram帖子中的代码

    Instagram: 网站: 推特: 面子书: GitHub: GIF和链接的代码半管贴纸暗模式按钮雷达无线上网 DNA加载标签栏推特信用卡翻转下载按钮共享按钮菜单滑杆 Reddit HeartLikeButton点赞按钮星级暗模式按钮载入画面

    AXURE9最新版,小版本号3646,序列号可用(win版本)

    4. 图片支持水平翻转、垂直翻转。 5. 元件不仅可以设置外部阴影,也可以设置内部阴影。 6. 边框线的粗细可以通过的宽度进行更灵活的设置,只需要填写数字即可。 7. 布尔运算增加了结合和分开。 8. 移动元件时,自动...

    mobile_flashcards:React本机应用程序。 这是Udacity React Developer Nanodegree的第三个也是最后一个项目

    否则,他们应该点击“不正确”按钮。 所有卡片通过后,将显示正确答案的数量。 除了添加之外,用户还可以更改Deck标题以及编辑卡片上的问题和答案。如何运行应用程序为了运行此应用程序,您需要在计算机上

    image-picker:一个易于使用,高度可配置的图像选择器,可用于您的聊天应用程序

    纵向和横向模式(支持iPhone X) 捕获资产(照片,实时照片,视频) 将捕获的资产保存到照片库 将相机翻转到前/后 打开/关闭实时照片 高度可定制的布局和用户界面要求iOS 10.1以上Xcode 9+ 斯威夫特4 安装手动地概述...

Global site tag (gtag.js) - Google Analytics