相信大家对汤姆猫这个游戏,都不陌生。汤姆猫确实是一款很经典的app。但我第一次接触汤姆猫的时候,觉得很神奇,它能根据我触摸的部位,然后做出相对应的动作,并且能重复人的声音。当用代码实现的时候,才发现原来是帧动画的播放。对于汤姆猫这个小项目,只是完成了触摸相应部位以及功能时,做出相对应的动作,至于声音还没有学到,所以暂时没有实现。此外,触摸事件也没有学,所以触摸头部、脚以及尾巴,我是用一个按钮(button)来实现的。
一、知识点
(1)文档注释:/** 文字 */
(2)要加载多张图片:一般用数组。定义:[ NSMutableArray *images = NSMutableArray array ].
(3)添加图片到数组中:[ images addObject : image ].
(4)isAnimating 方法:判断当前是否有动画正在执行。
(5)imageName:有缓存(传入文件名)。一般在图片较小或者图片较少的情况下使用。
imageWithContentsOfFile:没有缓存(传入文件的全路径)在图片比较大以及比较多的情况下使用。下面会具体介绍。
(6)动画播放次数:animationRepeatCount = 1代表动画只执行一次。
(7)动画播放时间:animationDuration.
(8)开始动画:startAnimation.
(1)NSArray-不可变数组
[ array count ]:数组的长度。
[ array objectAtIndex 0 ]:传入数组脚标的id得到数组对象。
[ arrayWithObjects;... ]:向数组对象初始化赋值。这里可以写任意对对象的指针。结尾必须使用nil。
(2)NSMutableArray 可变对象数组
[ NSMutableArray arrayWithCapacity:6 ]:初始化可变数组对象的长度,如果后面代码继续添加数组超过6以后,NSMutableArray的长度会自动扩充,6是自己可以设置的数组长度。
[ array addObject:... ]:向可变数组尾部添加数据对象。
[ array addObjectsFromArray: ]:向可变数组尾部添加一个数组对象。
三、在iOS开发中,有三种简单的动画设置。
(1)首尾式动画
代码实例: