iOS开发transform的使用

//

//  ViewController.m

//  18-transform的使用

 

 

#import "ViewController.h"

 

@interface ViewController ()

@property(nonatomic,assign)CGFloat ty;

 

- (IBAction)up:(id)sender;

- (IBAction)big;

- (IBAction)rotate;

- (IBAction)reset;

 

 

@end

 

@implementation ViewController

 

- (void)viewDidLoad {

    [super viewDidLoad];

    // Do any additional setup after loading the view, typically from a nib.

}

 

 

- (void)didReceiveMemoryWarning {

    [super didReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}

 

 

/**

 向上向下向左向右

 

 @param sender <#sender description#>

 */

- (IBAction)up:(id)sender {

    

//    NSLog(@"up");

    //通过父控件拿到按钮

    //可以通过父类拿到子类

    UIButton *headBtn = (UIButton *)[self.view viewWithTag:10];

    //2 通过fransform让头像向上走

    //tx 水平方向移动的范围

    //ty 竖直方向移动的范围

    

    /**

     CGAffineTransformMakeTranslation

     使用这个方法进行设置,每次变化都是以原始值进行

     变化的

 

     @param 0 <#0 description#>

     @param -10 <#-10 description#>

     @return <#return value description#>

     */

    //方法1: 开辟成员变量耗性能

//    self.ty-= 10;

//    headBtn.transform = CGAffineTransformMakeTranslation(0, self.ty);

    

    /**

     方法2:

     CGAffineTransformTranslate

     使用这个方法每次都是以CGAffineTransform 值进行变化的

     @param t#> <#t#> description#>

     @param tx#> <#tx#> description#>

     @param ty#> <#ty#> description#>

     @return <#return value description#>

     

     */

    headBtn.transform = CGAffineTransformTranslate(headBtn.transform, 0, -10);

 

    

    

}

 

//放大 缩小

- (IBAction)big {

    [UIView beginAnimations:nil context:nil];

    [UIView setAnimationDuration:1.5];

    UIButton *headBtn = (UIButton *)[self.view viewWithTag:10];

    headBtn.transform = CGAffineTransformScale(headBtn.transform, 1.5, 1.5);

    [UIView commitAnimations];

}

 

/**

 旋转

 */

- (IBAction)rotate {

    UIButton *headBtn = (UIButton *)[self.view viewWithTag:10];

    headBtn.transform = CGAffineTransformRotate(headBtn.transform, M_PI_4);

    

    

}

 

/**

 复位

 */

- (IBAction)reset {

    UIButton *headBtn = (UIButton *)[self.view viewWithTag:10];

    headBtn.transform = CGAffineTransformIdentity;

    

}

 

 

 

 

 

 

 

 

@end

posted @ 2017-07-28 10:39  李洪强  阅读(3275)  评论(0编辑  收藏  举报