你的位置:首页 > 操作系统

[操作系统]【代码笔记】字体抖动动画


一,效果图。

二,代码。

ViewController.m

复制代码
#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {  [super viewDidLoad];  // Do any additional setup after loading the view, typically from a nib.    UIButton *button=[UIButton buttonWithType:UIButtonTypeRoundedRect];  button.frame=CGRectMake(10, 100, 100, 200);  button.backgroundColor=[UIColor redColor];  [button setTitle:@"按钮" forState:UIControlStateNormal];  [self.view addSubview:button];    //按钮的动画效果  [self buttonAnimation:button];    }//按钮出现的时候有一个动画效果- (void)buttonAnimation:(UIButton *)sender{  CAKeyframeAnimation *animation = [CAKeyframeAnimation animationWithKeyPath:@"transform"];    CATransform3D scale1 = CATransform3DMakeScale(0.5, 0.5, 1);  CATransform3D scale2 = CATransform3DMakeScale(1.2, 1.2, 1);  CATransform3D scale3 = CATransform3DMakeScale(0.9, 0.9, 1);  CATransform3D scale4 = CATransform3DMakeScale(1.0, 1.0, 1);    NSArray *frameValues = [NSArray arrayWithObjects:              [NSValue valueWithCATransform3D:scale1],              [NSValue valueWithCATransform3D:scale2],              [NSValue valueWithCATransform3D:scale3],              [NSValue valueWithCATransform3D:scale4],              nil];    [animation setValues:frameValues];    NSArray *frameTimes = [NSArray arrayWithObjects:              [NSNumber numberWithFloat:0.0],              [NSNumber numberWithFloat:0.5],              [NSNumber numberWithFloat:0.9],              [NSNumber numberWithFloat:1.0],              nil];  [animation setKeyTimes:frameTimes];    animation.fillMode = kCAFillModeForwards;  animation.duration = 0.3f;    [sender.layer addAnimation:animation forKey:@"DSPopUpAnimation"];}
复制代码