//
// ViewController.m
// 纯代码做transform
//
// Created by 唐帅 on 16/4/4.
// Copyright © 2016年 tang. All rights reserved.
//
#import "ViewController.h"
@interface ViewController ()
@property(nonatomic,weak)UIButton *btnImage;
@property(nonatomic,weak)UIButton *btnUp;
@property(nonatomic,weak)UIButton *btnDown;
@property(nonatomic,weak)UIButton *btnLeft;
@property(nonatomic,weak)UIButton *btnRight;
@property(nonatomic,weak)UIButton *btnBig;
@property(nonatomic,weak)UIButton *btnSmall;
@property(nonatomic,weak)UIButton *btnLeftRote;
@property(nonatomic,weak)UIButton *btnRightRote;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// 主图片
UIButton *btnImage = [[UIButton alloc]init];
[self setButtonMessage:btnImage andNormalImageName:@"btn_01" andHeighImageName:@"btn_02" andFrame:CGRectMake(74, 49, 152, 141) andTag:100 andaddSubView:btnImage];
self.btnImage = btnImage;
//向上按钮
UIButton *btnUp = [[UIButton alloc]init];
[self setButtonMessage:btnUp andNormalImageName:@"btn_01" andHeighImageName:@"btn_02" andFrame:CGRectMake(58, 346, 46, 44)andTag:10 andaddSubView:btnUp];
self.btnUp = btnUp;
[btnUp addTarget:self action:@selector(move:) forControlEvents:(UIControlEventTouchUpInside)];
// 向下按钮
UIButton *btnDown = [[UIButton alloc]init];
[self setButtonMessage:btnDown andNormalImageName:@"btn_01" andHeighImageName:@"btn_02" andFrame:CGRectMake(62, 462, 46, 44) andTag:20 andaddSubView:btnDown];
self.btnDown = btnDown;
[btnDown addTarget:self action:@selector(move:) forControlEvents:(UIControlEventTouchUpInside)];
// 向左按钮
UIButton *btnLeft = [[UIButton alloc]init];
[self setButtonMessage:btnLeft andNormalImageName:@"btn_01" andHeighImageName:@"btn_02" andFrame:CGRectMake(8,406, 46, 44)andTag:30 andaddSubView:btnLeft];
self.btnLeft = btnLeft;
[btnLeft addTarget:self action:@selector(move:) forControlEvents:(UIControlEventTouchUpInside)];
// 向右按钮
UIButton *btnRight = [[UIButton alloc]init];
[self setButtonMessage:btnRight andNormalImageName:@"btn_01" andHeighImageName:@"btn_02" andFrame:CGRectMake(109, 406, 46, 44)andTag:40 andaddSubView:btnRight];
self.btnRight = btnRight;
[btnRight addTarget:self action:@selector(move:) forControlEvents:(UIControlEventTouchUpInside)];
// 放大按钮
UIButton *btnBig = [[UIButton alloc]init];
[self setButtonMessage:btnBig andNormalImageName:@"btn_01" andHeighImageName:@"btn_02" andFrame:CGRectMake(180, 353, 46, 44)andTag:50 andaddSubView:btnBig];
self.btnBig = btnBig;
[btnBig addTarget:self action:@selector(scale:) forControlEvents:(UIControlEventTouchUpInside)];
// 缩小按钮
UIButton *btnSmall = [[UIButton alloc]init];
[self setButtonMessage:btnSmall andNormalImageName:@"btn_01" andHeighImageName:@"btn_02" andFrame:CGRectMake(256, 353, 46, 44)andTag:60 andaddSubView:btnSmall];
self.btnSmall = btnSmall;
[btnSmall addTarget:self action:@selector(scale:) forControlEvents:(UIControlEventTouchUpInside)];
// 向左旋转
UIButton *btnLeftRote = [[UIButton alloc]init];
[self setButtonMessage:btnLeftRote andNormalImageName:@"btn_01" andHeighImageName:@"btn_02" andFrame:CGRectMake(180, 447, 46, 44)andTag:70 andaddSubView:btnLeftRote];
self.btnLeftRote = btnLeftRote;
[btnLeftRote addTarget:self action:@selector(rote:) forControlEvents:(UIControlEventTouchUpInside)];
// 向右旋转
UIButton *btnRightRote = [[UIButton alloc]init];
[self setButtonMessage:btnRightRote andNormalImageName:@"btn_01" andHeighImageName:@"btn_02" andFrame:CGRectMake(256, 447, 46, 44)andTag:80 andaddSubView:btnRightRote];
self.btnRightRote = btnRightRote;
[btnRightRote addTarget:self action:@selector(rote:) forControlEvents:(UIControlEventTouchUpInside)];
}
-(void)setButtonMessage:(UIButton *)btnName andNormalImageName:(NSString *)normalName andHeighImageName:(NSString *)heighName andFrame:(CGRect)frame
{
UIImage *norImage = [UIImage imageNamed:normalName];
UIImage *heighImage = [UIImage imageNamed:heighName];
[btnName setBackgroundImage:norImage forState:UIControlStateNormal];
[btnName setBackgroundImage:heighImage forState:UIControlStateHighlighted];
btnName.frame = frame;
}
-(void)setButtonMessage:(UIButton *)btnName andNormalImageName:(NSString *)normalName andHeighImageName:(NSString *)heighName andFrame:(CGRect)frame andTag:(int)tag andaddSubView:(UIButton *)subview
{
UIImage *norImage = [UIImage imageNamed:normalName];
UIImage *heighImage = [UIImage imageNamed:heighName];
[btnName setBackgroundImage:norImage forState:UIControlStateNormal];
[btnName setBackgroundImage:heighImage forState:UIControlStateHighlighted];
btnName.frame = frame;
btnName.tag = tag;
[self.view addSubview:subview];
}
-(void)move:(UIButton *)btn
{
switch (btn.tag) {
case 10://up
self.btnImage.transform = CGAffineTransformTranslate(self.btnImage.transform, 0, -20);
break;
case 20://down
self.btnImage.transform = CGAffineTransformTranslate(self.btnImage.transform, 0, 20);
break;
case 30: //left
self.btnImage.transform = CGAffineTransformTranslate(self.btnImage.transform, -20, 0);
break;
case 40: //right
self.btnImage.transform = CGAffineTransformTranslate(self.btnImage.transform, 20, 0);
break;
default:
break;
}
}
-(void)scale:(UIButton *)btn
{
switch (btn.tag) {
case 50: //big
self.btnImage.transform = CGAffineTransformScale(self.btnImage.transform, 1.5, 1.5);
break;
case 60: //small
self.btnImage.transform = CGAffineTransformScale(self.btnImage.transform, 0.5, 0.5);
break;
default:
break;
}
}
-(void)rote:(UIButton *)btn
{
switch (btn.tag) {
case 70: //rote to left
self.btnImage.transform = CGAffineTransformRotate(self.btnImage.transform, -M_PI_4);
break;
case 80: //rote to right
self.btnImage.transform = CGAffineTransformRotate(self.btnImage.transform, M_PI_4);
break;
default:
break;
}
}
@end