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

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

2、效果图如下:

3、控件有:

UIButton、UIImageView

4、说明

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

5、源码:

import UIKitclass 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之汤姆猫实现(UIImageView动画播放)相关推荐

  1. 【成长记录】iOS小程序-不会说话的汤姆猫

    做一个不会说话的汤姆猫,原理其实很简单,只是把连续的帧动画连续起来播放,但是在Xcode中实现起来很简单,不像是安卓那么复杂,只是Xcode中的方法封装的很实用很简单. 先看看,慢慢说起来~~~ 其实 ...

  2. OC:不会说话的汤姆猫(2014年12月)未添加音频

    代码下载地址:http://download.csdn.net/detail/ytuzhangziyao/8313977 1.第一种方法 /* 不会说话的汤姆猫 1.图片名放在button的title ...

  3. 【汤姆猫的实现 Objective-C语言】

    一.实现之后的效果 1.左边3个按钮,分别是 1)点击之后,汤姆猫掏出一只白色的小鸟,刚要吃,它飞走了, 2)汤姆猫放屁 3)汤姆猫喝牛奶, 右边3个按钮,分别是 1)汤姆猫用爪子把屏幕抓出3个道子, ...

  4. html5之汤姆猫小游戏

    汤姆猫游戏demo emm这里没有上传相关图片及资源,只有html <!DOCTYPE html> <html lang="en"> <head> ...

  5. java输出动物,求大神帮助输出为什么只有动物名,几条腿,怎么叫,没有汤姆猫叫等...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 package test; abstract class Animal{ String name; public Animal(String n){nam ...

  6. 教教你如何配置汤姆猫 和 Java 环境变量的设置

    我们先学习下如何设置 汤姆猫的环境变量吧! JDK环境变量配置:      如果你的JDK安装在C盘里,如:C:\Program Files\Java\jdk1.6.0_05,那么就在系统变量里(当然 ...

  7. 汤姆猫信使: 折翼的信使

    相信不少用户的手机中都养了不少汤姆猫吧,从会说话的汤姆猫到汤姆的情书再到近日发布的汤姆猫信使,你的手机中恐怕又得新养一只了,不过这只猫的动作太单调,只会说个话什么的,说实话有点坑爹: 应用名称:汤姆的 ...

  8. 日活四千万的汤姆猫游戏家族,用AWS云服务打造“无感”用户体验

    2020年7月,"会说话的汤姆猫"首款赛车类游戏<汤姆猫飞车>上线公测.它保持了汤姆猫游戏家族一贯的Q萌风格,赛道上一路都有萌宠陪伴,引领玩家进入奇妙的赛车世界.&qu ...

  9. 会说话的好朋友:汤姆猫开发商Outfit7旗下应用盘点

    还记得那只会说话的汤姆猫吗?它就像一个口袋里的好朋友和开心果,给大家带来了很多快乐.在汤姆猫大获成功后,其开发公司Outfit7又陆续推出了"会说话的好朋友"系列,这些趣味盎然的游 ...

  10. java程序填空题输出汤姆猫_《Java语言程序设计(新)》地大模拟

    <Java语言程序设计(新)>地大模拟 2020-08-29 08:08:08 635 有学员问关于<Java语言程序设计(新)>地大模拟的题目的参考答案和解析,具体如下: & ...

最新文章

  1. linux shell中 if else以及大于、小于、等于逻辑表达式介绍
  2. 在CentOS上安装Python
  3. C++基础学习笔记001
  4. 字符串和json之间的互相转化
  5. C语言中返回错误信息的函数总结
  6. rabbitmq技术的一些感悟(一)
  7. VS11中添加PagedList引用
  8. hdu 1561(树形dp)
  9. cocos2d 帧序列动画
  10. linux网络防火墙-iptables基础详解
  11. udev介绍及两个小场景应用
  12. Echarts使用教程
  13. 数据库语言,转载自:红黑联盟
  14. MySQL 日期字段时间加 1 毫秒
  15. [iOS]日历和提醒编程指南(Calendar and Reminders Programming Guide)
  16. 声纹、语音识别入门书籍推荐
  17. python logging动态变更输出日志文件名
  18. 使用 Apple Watch S6 测量血氧教程
  19. android 坚挺通话广播_Android智能机 摩托罗拉MileStone坚挺
  20. Mybatis新增数据,存在就更新,不存在就添加

热门文章

  1. win10更改hosts文件
  2. ZJNU 2314-Sleepy Cow Herding
  3. Laravel学习 - Eloquent\Builder与Query\Builder
  4. 一文看懂李录价值投资体系
  5. 【HDOJ】1814 Peaceful Commission
  6. android app跳转淘宝客户端店铺
  7. 如何使用python 执行命令行传入的代码
  8. Springboot毕业设计毕设作品,网上图书商城系统 开题报告
  9. java笔试中易考的概念
  10. STM32+IAP方案 实现网络升级应用固件