TransForm简单用法
1 - (IBAction)btbAction1:(UIButton *)sender { 2 3 4 __block ViewController *VC = self ; 5 6 [UIView animateWithDuration:1 animations:^{ 7 8 9 //1.平移 10 11 //在原来的基础上平移,再次点击按钮则不会移动 12 13 // CGAffineTransform make_translate = CGAffineTransformMakeTranslation(50, 0); 14 // 15 // 16 // VC.broderView.transform = make_translate ; 17 18 //2.可以连续平移 19 20 //参数1:在谁的基础上平移 21 // CGAffineTransform translate = CGAffineTransformTranslate(VC.broderView.transform, 10, 0); 22 // 23 // VC.broderView.transform = translate ; 24 25 26 //3.旋转 27 //旋转的度数 28 // CGAffineTransform make_rotate = CGAffineTransformMakeRotation(M_PI_4); 29 // 30 // VC.broderView.transform = make_rotate ; 31 // 32 33 //4.可连续旋转 34 35 CGAffineTransform rotation = CGAffineTransformRotate(VC.broderView.transform, M_PI_4); 36 37 // VC.broderView.transform = rotation ; 38 39 40 41 //5.只能一次收缩 42 43 // CGAffineTransform make_scale = CGAffineTransformMakeScale(0.5, 0.5); 44 // 45 // VC.broderView.transform = make_scale ; 46 47 48 //连续收缩 49 50 CGAffineTransform scale = CGAffineTransformScale(VC.broderView.transform, 0.8, 0.8); 51 52 // VC.broderView.transform = scale ; 53 54 55 //合并两种仿射变换效果 (合并两种效果) 56 CGAffineTransform contact = CGAffineTransformConcat(rotation, scale); 57 58 VC.broderView.transform = contact ; 59 60 }]; 61 62 63 } 64 65 66 - (IBAction)btnAction2:(UIButton *)sender { 67 68 69 //设置锚点,锚点位置不会变化,如果设置锚点,会调整view本身的位置去设置锚点的参数,所以不在点击方法里边设置 70 self.myView.layer.anchorPoint = CGPointMake(0.5, 0.9); 71 72 73 /* 74 参数1:隔多久执行一次 75 参数3:定时器的执行方法 76 参数4:用户信息 77 参数5:是否重复 78 */ 79 80 [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(timerAction) userInfo:nil repeats:YES]; 81 82 83 84 85 86 } 87 88 -(void)timerAction{ 89 90 91 self.myView.layer.transform = CATransform3DRotate(self.myView.layer.transform, M_PI / 30, 0, 0, 1); 92 93 94 } 95 96 97 - (void)dealloc { 98 [_broderView release]; 99 [_myView release]; 100 [super dealloc]; 101 } 102 @end