美文网首页
Android自定义gif播放控件

Android自定义gif播放控件

作者: 铁肩侠 | 来源:发表于2019-08-02 10:28 被阅读0次

代码看demo吧,就一个工具类

解释下控制次数的代码:

gif播放过程是在onDraw中循环diao调用 invalidateView();执行,逻辑主要看下面两个方法:具体看注释

 updateAnimationTime();
 drawMovieFrame(canvas);

 /**
     * Calculate current animation time
     */
    private void updateAnimationTime() {
        long now = android.os.SystemClock.uptimeMillis();
 
        if (mMovieStart == 0) {
            mMovieStart = now;
        }
        //这个获取到的时间不是一定的值,跟手机有关系,
        int dur = movie.duration();
 
        if (dur == 0) {
            dur = DEFAULT_MOVIE_VIEW_DURATION;
        }
        //在最后一帧的时候结束
        if (now - mMovieStart >= dur) {
            this.mPaused = true;
            return;
        }
        mCurrentAnimationTime = (int) ((now - mMovieStart) % dur);
    }

github链接:https://github.com/feiyuu/GifView

相关文章

网友评论

      本文标题:Android自定义gif播放控件

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