黑马程序员技术交流社区

标题: TOMCAT的实现 [打印本页]

作者: yuanlingqi    时间: 2014-11-13 21:21
标题: TOMCAT的实现
本帖最后由 yuanlingqi 于 2014-11-13 21:25 编辑

今天参照例子写了个tomcat的小程序,感慨ios实现动画真的是太容易了。

实现思路:
1.主要是利用UIImageView的播放动画属性来完成播放动画。
2.每当点击一个动作按钮,通过事件获取点击动作的title,这样就知道需要播放哪个动作了;
3.通过title,从预存的NSDictionary里获取该图片的总张数;
4.然后根据title和图片数量,通过NSBundle获取到图片路径,将所有要播放的图片加载到一个可变数组;
5.最后将获取到的图片数组设置到UIImageView的动画属性里,调用播放方法,so easy!

  1. #import "CJPViewController.h"

  2. @interface CJPViewController (){
  3.     NSDictionary *dic;
  4. }

  5. @end

  6. @implementation CJPViewController

  7. //初始加载方法
  8. - (void)viewDidLoad
  9. {
  10.     [super viewDidLoad];
  11.     //tom.plist中存放每个表情图片的页数
  12.     NSBundle *bundle = [NSBundle mainBundle];
  13.     NSString *path = [bundle pathForResource:@"tom" ofType:@"plist"];
  14.     //读取dictionary中的数据
  15.     dic = [NSDictionary dictionaryWithContentsOfFile:path];
  16. }

  17. - (IBAction)action:(UIButton *)sender {
  18.     //获取图片名称
  19.     NSString *title = [sender titleForState:UIControlStateNormal];
  20.     //将图片名称和从字典中获取的相应图片的数量作为参数调用动画方法
  21.     [self animate:title :[dic[title] intValue]];
  22. }

  23. -(void)animate:(NSString *)prefixName :(int)count{
  24.     //若动画正在进行,则点击无效
  25.     if ([_image isAnimating]) {
  26.         return;
  27.     }
  28.     //声明可变数组,存放需要播放的图片
  29.     NSMutableArray * images = [NSMutableArray array];
  30.    
  31.     //读取相应动作图片并放入数组
  32.     for (int i=0; i<count; i++) {
  33.         NSString *name = [NSString stringWithFormat:@"%@_%02d.jpg",prefixName,i];
  34.         NSString *path = [[NSBundle mainBundle]pathForResource:name ofType:nil];
  35.         //读取指定路径的图片
  36.         UIImage *image = [[UIImage alloc]initWithContentsOfFile:path];
  37.         //将图片放入数组
  38.         [images addObject:image];
  39.     }
  40.     //设置图片播放次数
  41.     [_image setAnimationRepeatCount:1];
  42.     //设置每张图片的播放时间和需要播放的图片数量
  43.     [_image setAnimationDuration:0.1*count];
  44.     //设图片view的动画属性
  45.     _image.animationImages = images;
  46.     //开始播放图片
  47.     [_image startAnimating];
  48. }

  49. @end
复制代码











作者: jinzhinan    时间: 2014-11-14 00:02
大神请问你是几期的学员啊?
作者: yuanlingqi    时间: 2014-11-14 22:07
jinzhinan 发表于 2014-11-14 00:02
大神请问你是几期的学员啊?

我不是大神,没期,还没上
作者: jinzhinan    时间: 2014-11-14 22:23
yuanlingqi 发表于 2014-11-14 22:07
我不是大神,没期,还没上

都是自学的?很厉害啊
作者: 易拉罐    时间: 2014-11-14 22:26
牛XXX
作者: yuanlingqi    时间: 2014-11-14 22:57
易拉罐 发表于 2014-11-14 22:26
牛XXX

视频教的太清楚了,一点也不牛X,加油吧,骚年
作者: 易拉罐    时间: 2014-11-14 23:11
yuanlingqi 发表于 2014-11-14 22:57
视频教的太清楚了,一点也不牛X,加油吧,骚年

那你学得也太快了!
作者: yuanlingqi    时间: 2014-11-15 05:04
本帖最后由 yuanlingqi 于 2014-11-15 05:07 编辑
易拉罐 发表于 2014-11-14 23:11
那你学得也太快了!

天道酬勤:lol
作者: 邵起    时间: 2014-11-15 09:18
进阶视频的内容吧!厉害!
作者: likechencen    时间: 2014-11-15 12:18
感谢楼主 谢谢快给点币或分谢谢




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2