美文网首页
iOS中制作动图流程:

iOS中制作动图流程:

作者: 向日葵_wwx | 来源:发表于2016-01-06 20:27 被阅读443次

pragma mark 动图:前提是自己得提前准备好一组图片,然后拖进工程

self.window.rootViewController = [[UIViewController alloc]init];

// 1、 创建一个照片视图
UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 200, 200)];
// 2、将照片的位置放在屏幕中间
imageView.center = self.window.center;
// 3、将所有的图片放入数组中
NSMutableArray *imageArray = [NSMutableArray array];
for (int i = 1; i <= 10; i++) {
UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"%d.tiff",i]];
// 4、将图片添加进数组
[imageArray addObject:image];
}
// 5、将一组图片赋给imageView
imageView.animationImages = imageArray;
// 6、设置动画时长,默认为秒
imageView.animationDuration = 0.5;
// 7、设置动画重复次数
imageView.animationRepeatCount = 6;

// 8、开始动画
// [imageView startAnimating];//这块如果注释了得话,动画就不再显示,正常情况下在这块就直接开始动图了,如果要关联按钮方法的话,就在这块直接设置一张占位照片就行了,然后在下面点击按钮回调方法来实现动画的开启或关闭。
// 9、动画未开启时,设置一张占位照片
imageView.image = [UIImage imageNamed:@"1.png"];

// 9、为imageView设置一个tag值,这样我们就可以在按钮的回调方法中设置它
imageView.tag = 1000;

// 显示 imageView
[self.window addSubview:imageView];

// 创建按钮
UIButton *imageBtn = [UIButton buttonWithType:UIButtonTypeSystem];
imageBtn.frame = CGRectMake(10, 10, 100, 100);
[imageBtn setTitle:@"动图" forState:UIControlStateNormal];
[imageBtn addTarget:self action:@selector(dongtu:) forControlEvents:UIControlEventTouchUpInside];
[self.window addSubview:imageBtn];

return YES;

}
//按钮的回调方法,

  • (void)dongtu:(UIButton *)sender{
    // 1、得到上面的相框
    UIImageView *image = (UIImageView *)[self.window viewWithTag:1000];
    // 2、判断动画是否开启
    BOOL isAni = image.isAnimating;
    // 3、 如果动画已经开启
    if (isAni == YES) {
    // 4、就停止动画
    [image stopAnimating];
    }else{//如果动画已经停止
    // 5、就开启动画
    [image startAnimating];

}
// selected是指选定状态
// [image startAnimating];
// if (sender.selected==YES) {
// sender.selected=NO;
// [image stopAnimating];
// }else{
// sender.selected = YES;
// }
}

相关文章

网友评论

      本文标题:iOS中制作动图流程:

      本文链接:https://www.haomeiwen.com/subject/wnaxkttx.html