translate 改变控件的大小位置和旋转

来源:互联网 发布:pdf软件官方下载 9.0 编辑:程序博客网 时间:2024/05/15 07:41
重点:translate 能改变控件的大小位置和旋转@interface ViewController ()@property (weak, nonatomic) IBOutlet UIButton *head;- (IBAction)leftRotate:(id)sender;- (IBAction)up;- (IBAction)scaleSize:(id)sender;@end@implementation ViewController- (IBAction)up {        /**     利用控件的transform属性来控制我们的控件     1、第一种创建     CGAffineTransformMakeTranslation:transform是形变属性,默认只会修改一次,它只会在原来状态下叠加的,那怎么改变?     改变传入值,让传入值叠加就能做到每次点击改变          2、第二种创建     CGAffineTransformTranslate     */        //1、取得头像    UIButton *head2 = (UIButton *)[self.view viewWithTag:10];        //2、得到transform    //a、第一种创建不推荐,是形变    //head2.transform = CGAffineTransformMakeTranslation(0, -100);//这种创建是原来状态为基础的        //b、第二种穿创建    //说明CGAffineTransformTranslate这个方法不是创建,而是在已经创建的基础上修改我们的transform    head2.transform = CGAffineTransformTranslate(head2.transform, -20, -20);    }- (IBAction)leftRotate:(id)sender{    //1、得到View    UIButton *head3 = (UIButton *)[self.view viewWithTag:10];        //2、左旋转45    //特别说明:这里是弧度制,平时我们的45度是角度制,但是这是弧度制,比如(PI)就是180度,M_PI_4这是四分之一派,45度    //正数是正时针    //当然这里对应的也是初始位置    //head3.transform = CGAffineTransformMakeRotation(M_PI_4);        //根据上次位置获取    head3.transform =  CGAffineTransformRotate(head3.transform, M_PI_4);    }- (IBAction)scaleSize:(id)sender {    //缩放    UIButton *head4 = [self.view viewWithTag:10];    //这里是算倍数的,比如下面1.5,就是原来的1.5倍    head4.transform =  CGAffineTransformScale(head4.transform, 1.5, 1);    }@end

0 0