您的位置:首页 > 移动开发 > IOS开发

iOS开发中实现动画效果的多种方法

2016-02-20 22:44 656 查看
一、首尾式动画

// 设置开始动画
[UIView beginAnimations:nil context:nil];
//设置动画时长
[UIView setAnimationDuration:2.0];
//设置实现动画的代码
self.redView.alpha =0;
//将beginAnimation之后的所有动画提交并生成动画
[UIView commitAnimations];


注意:在实际开发中,如果只是修改控件的属性,使用首尾式动画还是比较方便的,但是如果需要在动画完成后做后续处理,就不是那么方便。

二、block代码块动画

//使用block代码块实现
[UIView animateWithDuration:2.0 animations:^{
self.redView.alpha=0;
} completion:^(BOOL finished) {
[self.redView  removeFromSuperview];
}];


三、通过UIView实现转场动画-单视图

+ (void)transitionWithView:(UIView *)view duration:(NSTimeInterval)duration options:(UIViewAnimationOptions)options animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion;


■参数说明:
duration:动画的持续时间
view:需要进行转场动画的视图
options:转场动画的类型
animations:将改变视图属性的代码放在这个block中
completion:动画结束后,会自动调用这个block

UIView transitionWithView:_redView duration:3 options: UIViewAnimationOptionTransitionFlipFromTop
animations:^{
self.redView.alpha=0;
} completion:^(BOOL finished) {
self.redView.alpha=1;
}];


四、通过UIView实现转场动画-双视图

+ (void)transitionFromView:(UIView *)fromView toView:(UIView *)toView duration:(NSTimeInterval)duration options:(UIViewAnimationOptions)options completion:(void (^)(BOOL finished))completion;


■参数说明:
duration:动画的持续时间
options:转场动画的类型
animations:将改变视图属性的代码放在这个block中
completion:动画结束后,会自动调用这个block

[UIView  transitionFromView:_redView toView:_greenView duration:3 options:UIViewAnimationOptionTransitionFlipFromTop completion:^(BOOL finished) {
self.redView.alpha=0;
}];


五、通过Core Animation实现多种动画效果(具体使用方法前面的博客已经讲过,不在介绍)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: