zoukankan      html  css  js  c++  java
  • Spring Animation

    Spring Animation 可以让试图在一次动画中的运动轨迹像弹簧一样,有多次不同方向的运动,最后停止在终点。

    可以用如下方法创建一个Spring Animation:

    1 [UIView animateWithDuration:(NSTimeInterval) delay:(NSTimeInterval) usingSpringWithDamping:(CGFloat) initialSpringVelocity:(CGFloat) options:(UIViewAnimationOptions) animations:^{
    2         <#code#>
    3     } completion:^(BOOL finished) {
    4         <#code#>
    5     }];
    6     

    usingSpringWithDamping: 弹簧动画的阻尼值,也就是相等于摩擦力的大小,该属性的值在 0.0 到 1.0 之间,越靠近0,阻尼越小,弹簧的幅度越大,反之阻尼越大,弹动的幅度越小,如果大到一定程度,会出现弹不动的情况。

    initialSpringVelocity: 弹簧动画的速率,或者说是动力。值越小弹簧的动力越小,弹簧拉伸的幅度越小,反之动力越大,弹簧拉伸的幅度越大。这里需要注意的是,如果设置为0,表示忽略该属性,由动画持续时间和阻尼计算动画的效果。

    弹簧动画并不只作用于位置的变化 ,它可以作用于所有动画属性的变化,比如透明度的变化,也同样有弹簧动画的效果,只不过它没有位置变化那么明显和贴近真实,会出现一闪一闪的效果。

    1  [UIView animateWithDuration:3 delay:1 usingSpringWithDamping:0.1 initialSpringVelocity:5 options:UIViewAnimationOptionAllowUserInteraction | UIViewAnimationOptionAutoreverse animations:^{
    2         [btn setAlpha:0.1f];
    3     }completion:^(BOOL finished) {
    4       [btn setAlpha:1.0f];
    5     }];
  • 相关阅读:
    leetcode 279. Perfect Squares
    leetcode 546. Remove Boxes
    leetcode 312. Burst Balloons
    leetcode 160. Intersection of Two Linked Lists
    leetcode 55. Jump Game
    剑指offer 滑动窗口的最大值
    剑指offer 剪绳子
    剑指offer 字符流中第一个不重复的字符
    leetcode 673. Number of Longest Increasing Subsequence
    leetcode 75. Sort Colors (荷兰三色旗问题)
  • 原文地址:https://www.cnblogs.com/grq186/p/4624173.html
Copyright © 2011-2022 走看看