动画Animation两种实现方式的不同效果

iOS的常用的动画Animation有两种不同方式。

一种是commit方式,一种是block方式。


最简单的实现:

1.commit方式

[UIView beginAnimations:nil context:nil];  
//设定动画持续时间 
[UIView setAnimationDuration:2]; 
//动画的内容 
[self.view setBackgroundColor:[UIColor lightGrayColor]];
[UIView commitAnimations];

2.block方式

    [UIView animateWithDuration:2 animations:^{
        [self.view setBackgroundColor:[UIColor lightGrayColor]];
    }];


但是这两种方式,在显示效果上是有差异的。

以点击button变色为例,

commit方式会根据你点击,重置效果从新开始动画,

block方式则在动画显示期间不会在接收新的动画,等动画完了之后再接受。


上例中,若两秒内点击button多次,commit会不等效果结束,每次点击就会从新开始动画;block则只会完成一次动画效果,不管2秒内点击了多少次。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值