zoukankan      html  css  js  c++  java
  • 实现类似微信语音播放动画的效果

    要求就是点击播放按钮,小喇叭开始动,当语音结束后,停止动画。如图:

    这需要用到UIImageView的帧动画,该动画可以让一系列图片在特定的时间内按顺序显示出来。需要的素材如下:

    audio_icon_1

    *****分割线*****

    audio_icon_2

    *******分割线*******
    audio_icon_3

    代码如下:

    // 添加播放时候的动画图片
    [_audioBtn addSubview:self.animationview];
    [_audioBtn setImage:[UIImage imageNamed:@"audio_icon_3"] forState:UIControlStateNormal];
    _audioBtn.userInteractionEnabled = YES;
    //动画的imageview
    - (UIImageView *)animationview{
        if (!_animationview) {
            _animationview = [[UIImageView alloc] initWithFrame:CGRectMake(11.25, 5, 15, 15)];
            NSArray *myImages = [NSArray arrayWithObjects: [UIImage imageNamed:@"audio_icon_3"],[UIImage imageNamed:@"audio_icon_1"],[UIImage imageNamed:@"audio_icon_2"],[UIImage imageNamed:@"audio_icon_3"],nil];
            
            _animationview.animationImages = myImages;
            _animationview.animationDuration = 1; 
            _animationview.animationRepeatCount = 0; //动画重复次数,0表示无限循环 
        }
        return _animationview;
    }

    点击按钮的事件

    //点击播放按钮时,动画开始
    [self.animationview startAnimating];
    [self.audioBtn setImage:nil forState:UIControlStateNormal];
    //在语音结束后,停止动画
    [self.animationview stopAnimating];
    [self.audioBtn setImage:[UIImage imageNamed:@"audio_icon_3"] forState:UIControlStateNormal];
  • 相关阅读:
    des加密
    http请求报错
    js生成二维码(jquery自带)
    tomcat跨域请求
    jsp读取properties文件
    spring+mybatis整合读取不了配置文件
    svn提交报e200007错误
    firefox兼容性问题
    Oracle学习笔记(2)
    Spring设置定时器:quartz
  • 原文地址:https://www.cnblogs.com/Apologize/p/4895489.html
Copyright © 2011-2022 走看看