CASpringAnimation을 사용하여 반송하는 애니메이션

6245 단어 Swift애니메이션

CASpringAnimation을 사용한 애니메이션



원을 바운스하고 표시시키는 방법이 없을까 여러가지 생각하고 있었습니다.
Github에 오르고 있었다.

환경



Xcode 7.3.1
Swift 2.2
iOS 9

원이 바운스하는 애니메이션



CASpringAnimation의 KeyPath를 bounds.size로 지정하여 ImageView의 모서리를 둥글게하여 실행해 보았습니다.

SizeAnimation
    func startAnimation(){
        animation.mass = 1.0
        animation.damping = 12.0
        animation.stiffness = 240.0

        animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseIn)
        animation.fromValue = NSValue(CGSize: CGSizeMake(0, 0))
        animation.toValue = NSValue(CGSize: CGSizeMake(240, 240))

        animation.removedOnCompletion = true
        animation.fillMode = kCAFillModeForwards
        animation.duration = 2.5

        animation.delegate = self

        animationView.layer.addAnimation(animation, forKey: "animation")
    }

결과



원이 커지기보다는 모서리가 바운스하는 느낌이군요. 이미지로 원을 ImageView에 설정하는 것이 좋습니다.
github : iOS-9-Sampler

SizeAnimation

사각형의 모서리를 반송



공부하면 KeyPath를 cornerRadius 로 하여 사각형의 모서리를 바운스시켜 보았습니다.

RadiusChangeAnimation
    func startAnimation(){
        animation.mass = 1.0
        animation.damping = 10.0
        animation.stiffness = 240.0

        animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseIn)
        animation.fromValue = 200
        animation.toValue = 90

        animation.removedOnCompletion = false
        animation.fillMode = kCAFillModeForwards
        animation.duration = 1.0

        animation.delegate = self

        animationView.layer.addAnimation(animation, forKey: "animation")
    }

결과



github :

RadiusChangeAnimation



하트의 이미지로 반송시켜 보았습니다.

좋은 웹페이지 즐겨찾기