注意事项:
frame: 能修改位置和尺寸。(全能)
center: 能修改位置
bounds: 能修改尺寸(一般x、y都是0)
通过以下属性可以修改控件的位置:
frame.origin
Center
通过以下属性可以修改控件的尺寸
frame.size
bounds.size
Transform 属性:
利用transform属性可以修改控件的位移(位置)、缩放、旋转
创建一个transform属性:
CGAffineTransform CGAffineTransformMakeTranslation(CGFloat tx, CGFloat ty) ;
CGAffineTransform CGAffineTransformMakeScale(CGFloat sx, CGFloat sy);
CGAffineTransform CGAffineTransformMakeRotation(CGFloat angle)
(注意:angle是弧度制,并不是角度制)
在某个transform的基础上进行叠加
CGAffineTransform CGAffineTransformTranslate(CGAffineTransform t, CGFloat tx, CGFloat ty);
CGAffineTransform CGAffineTransformScale(CGAffineTransform t, CGFloat sx, CGFloat sy);
CGAffineTransform CGAffineTransformRotate(CGAffineTransform t, CGFloat angle);
清空之前设置的transform属性
view.transform = CGAffineTransformIdentity;
UIImage:
一个UIImage对象代表一张图片,一般通过imageNamed:方法就可以通过文件名加载项目中的图片(PNG格式的图片可以省略扩展名)
UIImage *image = [UIImage imageNamed:@"图片名"];
简易动画大致有2种方式:
头尾式
[UIView beginAnimations:nil context:nil]; // 开启动画
[UIView setAnimationDuration:1]; // 设置动画执行时间
/** 需要执行动画的代码 **/
[UIView commitAnimations]; // 提交动画
Block式
[UIView animateWithDuration:0.5 animations:^{
/** 需要执行动画的代码 **/
}];
注意点:
在属性检测器中:
如果发现通过代码无法修改控件的位置或者尺寸时,应该去掉storyboard里面的autolayout功能,这是自iOS6开始出现的特性
autolayout是用来自动布局的,用来束缚控件的位置和尺寸。去掉这个功能,控件的位置和尺寸就不再有一些固定的束缚。