在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
//
// MyButton.swift // PopInstall // // Created by su on 15/12/11. // Copyright © 2015年 tian. All rights reserved. // import UIKit class MyButton: UIButton { override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { super.touchesBegan(touches, withEvent: event) //缩放动画 var scale = self.pop_animationForKey("scale") as? POPSpringAnimation if scale != nil { scale?.toValue = NSValue(CGPoint: CGPointMake(0.8, 0.8)) } else { scale = POPSpringAnimation(propertyNamed: kPOPViewScaleXY) scale?.toValue = NSValue(CGPoint: CGPointMake(0.8, 0.8)) scale?.springBounciness = 20 scale?.springSpeed = 18 self.pop_addAnimation(scale, forKey: "scale") } //旋转动画 旋转是layer层动画 var rotate = self.layer.pop_animationForKey("ratate") as? POPSpringAnimation if rotate != nil { rotate?.toValue = M_PI / 6 } else { rotate = POPSpringAnimation(propertyNamed: kPOPLayerRotation) rotate?.toValue = M_PI / 6 rotate?.springBounciness = 20 rotate?.springSpeed = 18 self.layer.pop_addAnimation(rotate, forKey: "ratate") }
}
override func touchesEnded(touches: Set<UITouch>, withEvent event: UIEvent?) {
super.touchesEnded(touches, withEvent: event) //缩放动画
var scale = self.pop_animationForKey("scale") as? POPSpringAnimation
if scale != nil { scale?.toValue = NSValue(CGPoint: CGPointMake(1, 1)) } else { scale = POPSpringAnimation(propertyNamed: kPOPViewScaleXY) scale?.toValue = NSValue(CGPoint: CGPointMake(1, 1)) scale?.springBounciness = 20 scale?.springSpeed = 18 self.pop_addAnimation(scale, forKey: "scale") } //旋转动画 旋转是layer层动画
var rotate = self.layer.pop_animationForKey("ratate") as? POPSpringAnimation
if rotate != nil { rotate?.toValue = 0 } else {
rotate = POPSpringAnimation(propertyNamed: kPOPLayerRotation)
rotate?.toValue = 0 rotate?.springBounciness = 20 rotate?.springSpeed = 18 self.layer.pop_addAnimation(rotate, forKey: "ratate") }
}
}
|
请发表评论