iOS 中spring动画的使用

我们先来看以下两个动画的效果

上面的位移动画,一个是普通的动画,一个是spring动画,可以明显的看出来,spring动画在动画的前期更快一些,给人的感觉干脆,利落

以下是代码

- (void)normalAnimation
{
    [UIView animateWithDuration:1 animations:^{
        self.animationView.frame = CGRectMake(10, 400, 50, 50);
    } completion:^(BOOL finished) {
        self.animationView.frame = CGRectMake(10, 100, 50, 50);
    }];
}

- (void)springAnimation
{
    [UIView animateWithDuration:1 delay:0 usingSpringWithDamping:1 initialSpringVelocity:0 options:UIViewAnimationOptionCurveLinear animations:^{
        self.animationView.frame = CGRectMake(10, 400, 50, 50);
    } completion:^(BOOL finished) {
        self.animationView.frame = CGRectMake(10, 100, 50, 50);

    }];
}

spring 动画的接口就是

[UIView animateWithDuration:1

delay:0

usingSpringWithDamping:1

initialSpringVelocity:0

options:UIViewAnimationOptionCurveLinear

animations:^{

}];

app 中很多都是用的这个动画效果,让人看起来很舒服

Spring Animation 前期速度增加得更快,在动画时间一定的前提下,给人感觉更加快速、干净。

我们可以通过这个图看下

此外,Spring Animation 不只能对位置使用,它适用于所有可被添加动画效果的属性

相关推荐
连胜优佳13 分钟前
20、javase-API.容器
java·开发语言
leo_hush42 分钟前
【Flink】flink或java异常日志输出不完整问题解决
java·大数据·flink
binqian1 小时前
【Docker】安装registry本地镜像库,开启Https功能
java·docker·https
计算机-秋大田1 小时前
基于Spring Boot的扶贫助农系统设计与实现(LW+页码+讲解)
java·vue.js·spring boot·后端·课程设计
fchampion1 小时前
太原理工大学软件设计与体系结构 --javaEE
java·开发语言·java-ee
我命由我123451 小时前
Android Process 问题:NoSuchMethodError,No static method myProcessName()
android·java·java-ee·android studio·安卓·android-studio·安卓开发
秦老师Q1 小时前
JavaWeb—Servlet详解
java
信徒_1 小时前
ThreadLocal 的使用场景
java
LXMXHJ1 小时前
Java-日志-Slf4j-Log4j-logback
java·log4j·logback
麻花20132 小时前
WPF的自定义控件控件学习
java·前端·wpf