UIView属性动画
2016-03-11 00:00
399 查看
摘要: UIView属性动画
#pragma mark - 动画效果
- (void)rotateAnimation {
CGContextRef context = UIGraphicsGetCurrentContext();
[UIView beginAnimations:nil context:context];
// 动画速度 状态
[UIView setAnimationCurve:UIViewAnimationCurveLinear];
/**
缓慢开始和结束
UIViewAnimationCurveEaseInOut
开始时 缓慢
UIViewAnimationCurveEaseIn
结束时缓慢
UIViewAnimationCurveEaseOut
一直很慢
UIViewAnimationCurveLinear
*/
// 持续时间
[UIView setAnimationDuration:1.0];
// 覆盖
// [UIView setAnimationTransition:UIViewAnimationTransitionCurlDown forView:_parentView cache:true];
// 翻页
// [UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:_parentView cache:true];
// x 轴 旋转
// [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:_parentView cache:true];
// x 轴 逆向 旋转
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:_parentView cache:true];
[UIView commitAnimations];
}
Demo-->
// 属性动画 frame的改变
[UIView beginAnimations:@"shuxingdonghua" context:nil];
// 2秒完成(设置动画的持续时间)
[UIView setAnimationDuration:2];
// 延迟1秒(动画延迟开始时间) 感觉没啥用
//[UIView setAnimationDelay:10];
//重复次数 INT_MAX 等同无限循环
[UIView setAnimationRepeatCount:INT_MAX];
//设置原路返回
[UIView setAnimationRepeatAutoreverses:YES];
//设置动画效果
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
//(一定要先设置代理) 否则不调用添加方法
[UIView setAnimationDelegate:self];
// 给动画开始的时候添加事件(没有打印 需要设置代理)
[UIView setAnimationWillStartSelector:@selector(startAnimation)];
// 开始动画其实就已经到这里了 到达的位置
self.button.center = CGPointMake(300, 100);
// 开始动画 其实不添加也能播放 但是还是添加吧
[UIView commitAnimations];
简单,易懂,方便用,
这是我的原则.
demo下载:http://pan.baidu.com/s/1ntQXqtF
学自简书:阿童木'
#pragma mark - 动画效果
- (void)rotateAnimation {
CGContextRef context = UIGraphicsGetCurrentContext();
[UIView beginAnimations:nil context:context];
// 动画速度 状态
[UIView setAnimationCurve:UIViewAnimationCurveLinear];
/**
缓慢开始和结束
UIViewAnimationCurveEaseInOut
开始时 缓慢
UIViewAnimationCurveEaseIn
结束时缓慢
UIViewAnimationCurveEaseOut
一直很慢
UIViewAnimationCurveLinear
*/
// 持续时间
[UIView setAnimationDuration:1.0];
// 覆盖
// [UIView setAnimationTransition:UIViewAnimationTransitionCurlDown forView:_parentView cache:true];
// 翻页
// [UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:_parentView cache:true];
// x 轴 旋转
// [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:_parentView cache:true];
// x 轴 逆向 旋转
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:_parentView cache:true];
[UIView commitAnimations];
}
Demo-->
// 属性动画 frame的改变
[UIView beginAnimations:@"shuxingdonghua" context:nil];
// 2秒完成(设置动画的持续时间)
[UIView setAnimationDuration:2];
// 延迟1秒(动画延迟开始时间) 感觉没啥用
//[UIView setAnimationDelay:10];
//重复次数 INT_MAX 等同无限循环
[UIView setAnimationRepeatCount:INT_MAX];
//设置原路返回
[UIView setAnimationRepeatAutoreverses:YES];
//设置动画效果
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
//(一定要先设置代理) 否则不调用添加方法
[UIView setAnimationDelegate:self];
// 给动画开始的时候添加事件(没有打印 需要设置代理)
[UIView setAnimationWillStartSelector:@selector(startAnimation)];
// 开始动画其实就已经到这里了 到达的位置
self.button.center = CGPointMake(300, 100);
// 开始动画 其实不添加也能播放 但是还是添加吧
[UIView commitAnimations];
简单,易懂,方便用,
这是我的原则.
demo下载:http://pan.baidu.com/s/1ntQXqtF
学自简书:阿童木'
相关文章推荐
- NGUI Drall原理分析
- 如何设计好的UI控件
- java中String,StringBuffer,StringBuilder拼接效率对比
- 3.UIViewController详解
- tableView自定义背景图结合masonry毛玻璃特效
- A. Robot Sequence
- easyUI datagrid笔记
- UVA 12166 Equilibrium Mobile 修改天平
- Easy UI bug:iframe中请求页面而session失效时页面跳转问题
- poj 2478 Farey Sequence
- UESTC 1073 秋实大哥与线段树 线段树&&改值与区间和
- iOS边练边学--UIScrollView和xib文件实现简单分页+定时器初使用
- EasyUI DataGrid 相同连续列合并
- EasyUI DataGrid 相同连续列合并
- EasyUI DataGrid 相同连续列合并
- UITableView介绍 之下拉刷新原理
- iOS学习 UITableView 单选
- Android的UI框架汇总整理
- Android中Handler,Looper和MessageQueue工作原理解析
- 【leetcode】Array——Longest Consecutive Sequence(128)