UI基础学习之(十三):Transform的使用

本文详细介绍了如何使用CGAffineTransform实现图片的平移、旋转、缩放操作,并提供了实例代码演示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

transform基本能实现的功能有三个:平移,旋转,缩放

基本的属性设置:

/*
旋转一次
CGAffineTransformMakeRotation(CGFloat angle);
缩放一次
CGAffineTransformMakeScale(CGFloat sx, CGFloat sy);
移动一次
CGAffineTransformMakeTranslation(CGFloat tx, CGFloat ty);
在旋转的基础上继续旋转
CGAffineTransformRotate(CGAffineTransform t, CGFloat angle);
在缩放的基础上继续缩放
CGAffineTransformScale(CGAffineTransform t, CGFloat sx, CGFloat sy);
在移动的基础上继续移动
CGAffineTransformTranslate(CGAffineTransform t, CGFloat tx, CGFloat ty);
取消旋转、缩放、移动等回到原来的位置上
CGAffineTransformIdentity;
*/
例:设置图片,进行图片的平移,旋转,缩放

- (void)transformClick:(UIButton *)btn
{
    //旋转
    //旋转1次
    self.iconImage.transform = CGAffineTransformMakeRotation(M_PI_2);
    //在旋转后的位置上继续旋转
    self.iconImage.transform = CGAffineTransformRotate(self.iconImage.transform, M_PI_2);
    
    //缩放
    //缩放一次
    //缩放的方向和比例
    //x方向上进行缩放 y方向上进行缩放
    //缩放的比例,设置为负数的将在哪个方向上进行翻转后缩放
    self.iconImage.transform = CGAffineTransformMakeScale(-1, 1);
    //连续进行缩放
    self.iconImage.transform = CGAffineTransformScale(self.iconImage.transform, 1.1, 1.1);
    
    //移动
    //单次移动
    self.iconImage.transform = CGAffineTransformMakeTranslation(50, 100);
    //连续移动
    self.iconImage.transform = CGAffineTransformTranslate(self.iconImage.transform, 10, 10);
}

设置恢复到原来的位置:

- (void)cancelClick:(UIButton *)btn
{
    self.iconImage.transform = CGAffineTransformIdentity;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值