博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UIView下使用Animation控制动画
阅读量:6088 次
发布时间:2019-06-20

本文共 1356 字,大约阅读时间需要 4 分钟。

 

 

动画效果是IOS界面重要的特色之一,其中CAAnimation是所有动画对象的抽象父类,作为新人,使用较多的是UIView下的动画方法(类方法)。使用UIView下的动画,有下面几个方法。

方法一:设置beginAnimations

其中memberView为需要添加的子视图的视图,mivc.view为子视图,在使用的时候,需要将这两个地方替换

 

[cpp] 
  1. [UIView beginAnimations:@"view flip" context:nil];  
  2. [UIView setAnimationDuration:1];  
  3. [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:memberView cache:YES];  
  4. [memberView addSubview:mivc.view];  
  5. [UIView commitAnimations];  
需要注意的是,一定要使用[UIView commitAnimations];动画才会生效

 

 

通过[UIView setAnimationDuration:1]; 设置持续时间。

在IOS4.0后,我们有了新的方法,+ (void)transitionWithView:(UIView *)view duration:(NSTimeInterval)duration options:(UIViewAnimationOptions)options animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion,依然是UIView的类方法,但使用到了Block对象,Block对象是一组指令,可以传递(像变量一样),可以把它想像成C语言的函数指针。

方法二:

其中在当前视图下,删除[blueViewController view],添加[yellowViewController view],在使用时,这两个地方要替换

 

[cpp] 
  1. [UIView transitionWithView:self.view  
  2.                      duration:0.2  
  3.                       options:UIViewAnimationOptionTransitionFlipFromLeft  
  4.                    animations:^{
  5.                            [[blueViewController view] removeFromSuperview];
  6.                            [[self view] insertSubview:yellowViewController.view atIndex:0]; }  
  7.                     completion:NULL
  8.                      ];  
其中animations:后的block为对特定视图发生的改变,其不能为是NULL,completion:后block为动画执行完后,需要执行的代码块,可以为NULL。

 

根据手册,在整个动画过程中,用户交互对于此视图是暂时无效的(而IOS5.0前,动画过程中,用户交互对于整个应用是无效的),如果想要用户可以和视图交互,可以改变 UIViewAnimationOptionAllowUserInteraction 的值。

 

 

 

 

转载地址:http://wapwa.baihongyu.com/

你可能感兴趣的文章
用C#打造自己的通用数据访问类库(续)
查看>>
拇指接龙游戏中的Undo道具与STL容器deque简介
查看>>
2017年 JavaScript 框架回顾 -- React生态系统
查看>>
CountDownLatch、CyclicBarrier
查看>>
eclipse + JBoss 5 + EJB3开发指南(11):实体Bean的连接策略(JOINED Strategy)
查看>>
实战详解域信任关系,Active Directory系列之十七
查看>>
exchange 2010 配置OWA重定向参考v1.0
查看>>
【拯救赵明】全面防护网络攻击服务器负载及安全解决方案
查看>>
EonerCMS——做一个仿桌面系统的CMS(十三)
查看>>
C# 温故知新 基础篇(16) 集合<思维导图>
查看>>
hadoop1.2.1在ubuntu上的安装
查看>>
Microsoft Build 2015 汇总
查看>>
MonoRail学习笔记二:框架代码下载
查看>>
Android学习笔记(一) 使用选择部件
查看>>
go2基本类型
查看>>
warning LNK4098: defaultlib "MSVCRT" conflicts with use of other libs; use /NODE
查看>>
android 28 SimpleAdapter
查看>>
硬盘空间术语:unallocated, unused and reserved
查看>>
SQL Server 2014里的缓存池扩展
查看>>
windows删除多余启动引导项
查看>>