ios UIView常用动画效果
一
//调用
|
1
2
3
4
5
6
|
if(m_viewScenario.superview == nil)<br>{ m_viewScenario.alpha = 1.0; m_viewScenario.transform = CGAffineTransformIdentity; [self zoomIn:m_viewScenario andAnimationDuration:1.0 andWait:YES]; [self.view addSubview:m_viewScenario];} |
//展示,由小变大
|
1
2
3
4
5
6
7
8
9
10
11
12
13
|
- (void)zoomIn: (UIView *)view andAnimationDuration: (float) duration andWait:(BOOL) wait{ __block BOOL done = wait; view.transform = CGAffineTransformMakeScale(0, 0); [UIView animateWithDuration:duration animations:^{ view.transform = CGAffineTransformIdentity; } completion:^(BOOL finished) { done = NO; }]; while (done == YES) [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.01]];} |
//有大变小调用
|
1
2
|
[self zoomOut:m_viewScenario andAnimationDuration:1.0 andWait:NO];[self removeScenarioView]; |
//大变小 函数
|
1
2
3
4
5
6
7
8
9
10
11
|
- (void)zoomOut: (UIView *)view andAnimationDuration: (float) duration andWait:(BOOL) wait{ __block BOOL done = wait; view.transform = CGAffineTransformIdentity; [UIView animateWithDuration:duration animations:^{ view.transform = CGAffineTransformMakeScale(0, 0); } completion:^(BOOL finished) { done = YES; }]; while (done == NO) [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.01]];} |
二,如果需要类似UIAlertView那种动画
显示调用
|
1
2
3
4
5
6
7
8
|
if(m_viewScenario.superview == nil){ m_viewScenario.alpha = 1.0; m_viewScenario.transform = CGAffineTransformIdentity; [self.view addSubview:m_viewScenario]; [self zoomIn:m_viewScenario andAnimationDuration:1.0];} |
小变大动画
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
- (void)zoomIn: (UIView *)view andAnimationDuration: (float) duration{ CAKeyframeAnimation * animation; animation = [CAKeyframeAnimation animationWithKeyPath:@"transform"]; animation.duration = duration; //animation.delegate = self; animation.removedOnCompletion = NO; animation.fillMode = kCAFillModeForwards; NSMutableArray *values = [NSMutableArray array]; [values addObject:[NSValue valueWithCATransform3D:CATransform3DMakeScale(0.1, 0.1, 1.0)]]; [values addObject:[NSValue valueWithCATransform3D:CATransform3DMakeScale(1.2, 1.2, 1.0)]]; [values addObject:[NSValue valueWithCATransform3D:CATransform3DMakeScale(0.9, 0.9, 0.9)]]; [values addObject:[NSValue valueWithCATransform3D:CATransform3DMakeScale(1.0, 1.0, 1.0)]]; animation.values = values; animation.timingFunction = [CAMediaTimingFunction functionWithName: @"easeInEaseOut"]; [view.layer addAnimation:animation forKey:nil];} |
大变小,调用同上,函数稍有变化
|
1
2
3
4
5
6
7
8
9
10
11
12
|
- (void)zoomOut: (UIView *)view andAnimationDuration: (float) duration andWait:(BOOL) wait{ __block BOOL done = wait; view.transform = CGAffineTransformIdentity; [UIView animateWithDuration:duration animations:^{ view.transform = CGAffineTransformMakeScale(0, 0); view.alpha = 0.0; } completion:^(BOOL finished) { done = YES; }]; while (done == NO) [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:0.01]]; |
ios UIView常用动画效果的更多相关文章
- IOS UIVIEW layer动画 总结(转)
转发自:http://www.aichengxu.com/article/%CF%B5%CD%B3%D3%C5%BB%AF/16306_12.html IOS UIVIEW layer动画 总结, ...
- iOS酷炫动画效果合集
iOS酷炫动画效果合集 源码地址 https://github.com/YouXianMing/Animations 效果绝对酷炫,包含了多种多样的动画类型,如POP.Easing.粒子效果等等,虽然 ...
- jquery-12 jquery常用动画效果有哪些
jquery-12 jquery常用动画效果有哪些 一.总结 一句话总结:jquery可以用户animate()自定义动画,也可以slide和fade系列方法来设置动画. 1.动画效果如何设置执行时间 ...
- IOS开发-UIView之动画效果的实现方法(合集)
http://www.cnblogs.com/GarveyCalvin/p/4193963.html 前言:在开发APP中,我们会经常使用到动画效果.使用动画可以让我们的APP更酷更炫,最重要的是优化 ...
- ios uiview封装动画(摘录)
iOS开发UI篇—核心动画(UIView封装动画) 一.UIView动画(首尾) 1.简单说明 UIKit直接将动画集成到UIView类中,当内部的一些属性发生改变时,UIView将为这些改变提供动画 ...
- iOS的GIF动画效果实现
引言:GIF图像格式是常见的一种动态图片格式,无论是在Web端还是在移动端都经常遇到,但是考虑目前iOS还无法原生展现GIF图片,而对于GIF的原生支持暂时也没有像JPG.PNG等图像格式支持得这么全 ...
- iOS 一个小动画效果-b
近期工作不忙,来一个需求感觉棒棒的,是一个比较简单的页面,如下图(图1) 图1 应该很简单吧,没什么大的功能,就是一个展示,一个拨打电话,拨打电话不需要说,几行代码搞定,基本UI也不用说了,刚培训完的 ...
- iOS UIView常用的一些方法setNeedsDisplay和setNeedsLayout 区别
1.UIView的setNeedsDisplay和setNeedsLayout方法 首先两个方法都是异步执行的.而setNeedsDisplay会调用自动调用drawRect方法,这样可以拿到 UI ...
- iOS学习之动画效果的实现
// // ViewController.m // UI-动画练习 // // Created by jzq_mac on 15/7/22. // Copyright (c) 2015年 jz ...
随机推荐
- .Net中的Socket通讯
.NetFrameWork为Socket通讯提供了System.Net.Socket命名空间,在这个命名空间里面有以下几个常用的重要类分别是: ·Socket类 这个低层的类用于管理连接,WebReq ...
- php实现查询百度google收录情况(示例代码)
对了貌似查google pr的东西只是file一个地址而已,如此说了就没有什么难度了.完整代码如下 写了一个小东西记录baidu和google对于站点的收录情况,现在可以查询了,其实也没什么难度,就是 ...
- ASP.NET中的TextBox下划线
看到园子里一位同行写的 http://www.cnblogs.com/xiaopeng84/archive/2007/04/10/707093.html 但是没有贴出效果图,自己练了一下,贴出代码和效 ...
- C# 文件管理类 Directory
今天简单接触了一下C#的文件管理类,对类的大体功能做了简单的了解; 做项目用于判断文件是否存.在创建文件.删除文件较为常用:今天大体总结文件调取功能: public string GetFile() ...
- 项目文件包含 ToolsVersion="12.0" 设置,而此版本的 MSBuild 不支持该工具版本
解决方法: 右键点击你的项目,选择属性,再点击配置属性中的常规,常规中有个平台工作集,把V120改成V100,点击应用即可.
- c++中string类的详解
,<时返回-1,==时返回0 string的子串:string substr(int pos = 0,int n = npos) const;//返回pos开始的n个字符组成的字符串strin ...
- Linux流量监控工具 - iftop (最全面的iftop教程)
在类Unix系统中可以使用top查看系统资源.进程.内存占用等信息.查看网络状态可以使用netstat.nmap等工具.若要查看实时的网络流量,监控TCP/IP连接等,则可以使用iftop. 一.if ...
- java解析xml禁止校验dtd
参考: http://shansun123.iteye.com/blog/1020425 http://blog.csdn.net/hailanzhijia/article/details/60049 ...
- c#之委托和事件的区别
1.什么是委托,这里就不做介绍了,如果想了解可以查看博客:http://www.cnblogs.com/xiaoxiaogogo/p/3571494.html 下面开始对事件进行介绍 1.定义事件以及 ...
- DRLSE 水平集算法总结
背景: Level Set方法是美国数学家Osher(加州大学洛杉矶分校)和Sethian(加州大学伯克利分校)合作提出的.后者因为对Level Set的贡献获得了去年美国数学会与工业应用数学会联合颁 ...