您的位置:首页 > 移动开发 > Swift

swift之汤姆猫实现(UIImageView动画播放)

2016-03-01 11:57 477 查看

// ====== 注意, 下面的代码存在内存暴涨的问题 ,修正方式,见本页评论

1、准备好素材。我只有动画素材,没得按钮素材。http://pan.baidu.com/s/1o7ey81G

2、效果图如下:



3、控件有:

UIButton、UIImageView

4、说明

我只做三个功能,其他的动画没有做。因为代码类似,就不赘述了。

5、源码:

import UIKit

class ViewController: UIViewController {

///---控件关联代码
@IBOutlet weak var imageview: UIImageView!
@IBOutlet weak var drink: UIButton!

override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}

///---吃东西
@IBAction func eatBtnClick(sender: UIButton) {
btnClick(39, btnName: "cat_eat");
}

///---生气
@IBAction func angryBtnClick(sender: UIButton) {
btnClick(25, btnName: "cat_angry");
}

///--喝牛奶按钮单击事件
@IBAction func btnDrinkClick(sender: UIButton) {

btnClick(81, btnName: "cat_drink");

//       ///---1.加载图片到数组中
//        var imgArray = [UIImage]();
//        for (var i = 0; i < 81; i++)
//        {
//            let imageName = i < 10 ? "cat_drink000\(i)" : "cat_drink00\(i)";
//            let image = UIImage(named: imageName)!;
//            imgArray.insert(image, atIndex: i);
//        }
//        ///---2、将数组添加到UIImageView中
//        imageview.animationImages = imgArray;
//        ///---3、设置动画持续时间
//        imageview.animationDuration = Double(imgArray.count) * 0.1;
//        ///---4、设置动画的持续次数
//        imageview.animationRepeatCount = 1;
//        ///---5、开启动画
//        imageview.startAnimating();
}

///--模板函数
///---传入的参数:
///----imageCount:动画的图片数,btnName:动画的名字
func btnClick(imageCount:Int, btnName:String)
{

///---1.加载图片到数组中
var imgArray = [UIImage]();
for (var i = 0; i < imageCount; i++)
{
let imageName = i < 10 ? "\(btnName)" + "000\(i)" : "\(btnName)" + "00\(i)";
let image = UIImage(named: imageName)!;
imgArray.insert(image, atIndex: i);
}
///---2、将数组添加到UIImageView中
imageview.animationImages = imgArray;
///---3、设置动画持续时间
imageview.animationDuration = Double(imgArray.count) * 0.1;
///---4、设置动画的持续次数
imageview.animationRepeatCount = 1;
///---5、开启动画
imageview.startAnimating();
}

override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}

6、程序启动界面设置

在storyboard中选中ImageView控件,设置其属性名 Image。



7、没有做语音。后续跟上

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  swift 汤姆猫动画