一、动画的属性是指当属性从一个值变为另一个值的时候,可以半自动的支持动画。
1. UIView对象中支持动画的属性有:
frame:改变视图的尺寸和位置
bounds:改变视图的尺寸
center:改变视图的位置
transform:使用这个可以翻转或者缩放试图
alpha:使用这个可以改变视图的透明度
backgroundColor:使用这个来改变视图的背景色
contentStetch:使用这个可以改变视图的内容如何拉伸
2. 配置动画的参数
用setAnimationStartDate:方法来设置动画在commitAnimations方法返回之后的发生日期;
用setAnimationDelay:方法来设置实际发生动画和commitAnimations方法返回的时间点之间的间隔;
setAnimationDuration:方法来设置动画持续的秒数;
setAnimationCurve:方法来设置动画过程的相对速度,比如动画可能在启动阶段逐渐加速,而在结束阶段逐渐减速,或者整个过程都保持相同的速度;
setAnimationRepeatCount:方法来指定动画的重复次数;
setAnimationRepeatAutoreverses:方法来指定动画在到达目标值时是否自动反向播放,你可以结合这个方法和setAnimationRepeatCount:方法,使各个属性在初始值和目标值之间平滑一段时间;
注意:缺省状态下,所有支持动画的属性在动画块中发生的变化都会形成动画,如果不想让动画块中发生的某变化产生动画效果,可以通过setAnimationEnabled:方法来暂时禁止动画,在完成修改后才重新激活动画。
3. 属性动画的使用
方法一、[UIView beginAnimation:nil context:nil];
[UIView setAnimationDuration:2.0];//2秒
...//继续对动画进行一系列的设置
...//这里写上改变后的属性变化值
[UIView commitAnimations];
方法二、[UIView animateWithDuration:2.0 animations:^{
..//这里写上改变后的属性变化值
}];
二、UIView的常用方法
当调用addSubview的时候,会对其进行保留,理解为retain一个对象就可以,当调用removeFromSuperview的时候,会释放,也就是release。
基本的添加和删除子视图:
addSubview:添加子视图
insertSubview:atIndex:视图插入到指定索引位置
insertSubview:aboveSubview:将视图插入到指定视图之上
insertSubview:belowSubview:将视图插入到指定视图之下
bringSubviewToFront:把视图移动到最顶层
sendSubviewToBack:把视图移动到最底层
exchangeSubviewAtIndex:withSubviewAtIndex:把两个索引对应的视图调换位置
removeFromSuperview:把视图从父视图中移除