标签:动画
<span style="color:#ffff99;background-color: rgb(255, 204, 204);">//
// ClickZanHelper.m
// LJECClickZan
//
// Created by xiaoyao on 14/11/26.
// Copyright (c) 2014年 lijien. All rights reserved.
//
#import "ClickZanHelper.h"
#import <UIKit/UIKit.h>
@implementation ClickZanHelper
+(void)clickChangeWithButtonImageNormal:(NSString *)imageNameNormal
imageNameSelsected:(NSString *)imageNameSelsected
receuveBtn:(UIButton *)receuveBtn
clickCount:(NSUInteger)count {
[receuveBtn setImage:[UIImage imageNamed:count%2 == 0 ? imageNameSelsected : imageNameNormal]
forState:UIControlStateNormal];
// 实现利用关键帧动画
CAKeyframeAnimation *keyAnimation = [CAKeyframeAnimation animationWithKeyPath:@"transform.scale"];
keyAnimation.values = @[@(0.1), @(1.0), @(1.5)];
keyAnimation.keyTimes = @[@(0.0), @(0.5), @(0.8), @(1.0)];
keyAnimation.calculationMode = kCAAnimationLinear;
count++;
[receuveBtn.layer addAnimation:keyAnimation forKey:@"SHOW"];
return;
}
@end
//
// ClickZanViewController.m
// LJECClickZan
//
// Created by xiaoyao on 14/11/26.
// Copyright (c) 2014年 lijien. All rights reserved.
//
#import "ClickZanViewController.h"
#import "ClickZanHelper.h"
@interface ClickZanViewController () {
NSUInteger i;
UIButton *_imageBtn;
}
@end
@implementation ClickZanViewController
- (void)viewDidLoad {
[super viewDidLoad];
_imageBtn = [UIButton buttonWithType:UIButtonTypeCustom];
[_imageBtn setFrame:CGRectMake(140, 150, 80, 30)];
[_imageBtn setImage:[UIImage imageNamed:@"profile_btn_unlike"] forState:UIControlStateNormal];
[self.view addSubview:_imageBtn];
UIButton *clickBtn = [UIButton buttonWithType:UIButtonTypeCustom];
[clickBtn setFrame:CGRectMake(140, 200, 80, 30)];
clickBtn.backgroundColor = [UIColor blueColor];
[clickBtn setTitle:@"赞" forState:UIControlStateNormal];
[clickBtn addTarget:self action:@selector(clickBtnZan:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:clickBtn];
return;
}
- (void)clickBtnZan:(UIButton *)btn {
[ClickZanHelper clickChangeWithButtonImageNormal:@"profile_btn_unlike"
imageNameSelsected:@"profile_btn_like"
receuveBtn:_imageBtn
clickCount:i];
i++;
return;
}
@end
</span>标签:动画
原文地址:http://blog.csdn.net/u010606986/article/details/41514109