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

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

2、效果图如下

swift之汤姆猫实现(UIImageView动画播放)_第1张图片

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。

swift之汤姆猫实现(UIImageView动画播放)_第2张图片

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


你可能感兴趣的:(swift,汤姆猫动画)