IOS transform的使用(移动,放大,旋转)

@interface ViewController ()
- (IBAction)up;
- (IBAction)big ;
- (IBAction)leftRotate ;
@property (nonatomic,assign)CGFloat ty;

@end

@implementation ViewController



//向上移动,transform以第一次状态为准,作变化
- (IBAction)up {
    
    //取得头像按钮
    UIButton *head=(UIButton *)[self.view viewWithTag:10];

    
    //每次向上移动100的距离
//    self.ty-=50;
//    head.transform=CGAffineTransformMakeTranslation(0, self.ty);
    //在head.transform的基础上移动距离。
    head.transform=CGAffineTransformTranslate(head.transform, 0, -100);
}


//放大控件,transform以第一次状态为准,作变化
- (IBAction)big {
    
    //取得头像按钮
    UIButton *head=(UIButton *)[self.view viewWithTag:10];
    
    
    //增大:输入的值是按钮的 缩放比例
    //    self.ty-=50;
    //    head.transform=CGAffineTransformMakeScale(0, self.ty);
    //在head.transform的基础上放大控件。
    head.transform=CGAffineTransformScale(head.transform, 1.5, 1.5);
}

//向左旋转控件,transform以第一次状态为准,作变化
- (IBAction)leftRotate {
    
    //取得头像按钮
    UIButton *head=(UIButton *)[self.view viewWithTag:10];
    
    //向左旋转 45°(M_PI_4)
     //    45°/180°
    //角度是正数:顺时针,角度是负数:逆时针
    //head.transform=CGAffineTransformMakeRotate(M_PI_4);
    
    //在head.transform的基础上左旋转控件。
    head.transform=CGAffineTransformRotate(head.transform, -M_PI_4);
}
@end

 

转载于:https://www.cnblogs.com/liuwj/p/6411748.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值