描述位置和大小的属性

来源:互联网 发布:九龙朝圣兽数据 编辑:程序博客网 时间:2024/05/17 19:18

frame、center、bounds、transform的使用:


frame:包含位置(元素左上角坐标)和大小

CGRect类型


center:只能修改位置,元素中心点坐标

CGPoint类型


bounds:只能修改大小

CGRect类型,但是它的x和y都是0,所以之恩能够通过bounds修改大小


transform:什么都能干(平移,缩放,旋转)

注:原始位置为0

平移:

1、基于原始位置的平移:

下面这句话的意思是:告诉控件平移到距离原始位置-50的位置(只能平移一次)

self.btnIcon.transform =CGAffineTransformMakeTranslation(0, -50); // 向上平移50

                                                                                           (x, y)

2、基于一个旧的位置的平移(可连续平移)

self.btnIcon.transfrom =CGAffineTransformTranslate(self.btnIcon.transform, 0, 50);

                                (旧的位置)

缩放:scale

1、基于原始位置的缩放

self.btnIcon.transform = CGAffineTransformMakeScale(0.5, 0.5); // 缩放为原来的0.5倍


2、基于一个旧的位置的缩放

self.btnIcon.transform = CGAffineTransformScale(self.btnIcon.transform, 1.5, 1.5); // 1.5倍


旋转:rotate

1、基于原始位置的旋转

  • self.btnIcon.transform  =  CGAffineTransformMakeRotation(-M_PI_4); //逆时针旋转45度(默认为顺时针,加一个负号“-”为逆时针)

                                (弧度)

2、基于一个旧的位置的旋转

self.btnIcon.transform   =  CGAffineTransfromRotate(self.btnIcon.transform, -M_PI_4);


回到原始状态:

1、清空之前设置的transform属性

view.transform = CGaffineTransformIdentity;

2、制空

view.transform = nil;


0 0
原创粉丝点击