前段时间在项目中使用到了 CAKeyframeAnimation ,利用帧动画实现点击按钮缩放动画!以下是自己的简单案例记录
自定义一个按钮类 继承自UIButton
#import <UIKit/UIKit.h>
@interface CustomAnimationBtn : UIButton
//执行动画
- (void)playKeyAnimation;
@end
动画执行的方法:
#import "CustomAnimationBtn.h"
@implementation CustomAnimationBtn
- (void)playKeyAnimation
{
//等比例缩放
CAKeyframeAnimation *keyAnimation = [CAKeyframeAnimation animationWithKeyPath:@"transform.scale"];
keyAnimation.duration = 0.25;
keyAnimation.values = @[@1.0,@0.8,@1.0];
//动画均匀进行
keyAnimation.calculationMode = kCAAnimationCubicPaced;
//将帧动画添加到当前图层
[self.layer addAnimation:keyAnimation forKey:@"keyAnimation"];
}
@end
通过此类进行创建按钮 并在按钮响应事件中调用playKeyAnimation方法 可以简单实现按钮的等比例缩放动画效果。