GIF loading
2015-11-24 15:03
176 查看
package com.example.gif; import android.content.Context; import android.graphics.Canvas; import android.graphics.Movie; import android.util.AttributeSet; import android.view.View; public class MyGifView extends View { private long movieStart; private Movie movie; // 重写该构造方法 public MyGifView(Context context, AttributeSet attributeSet) { super(context, attributeSet); // 以文件刘流(InputStream)读取进gif图片资源 movie = Movie.decodeStream(getResources().openRawResource( R.drawable.loading)); } @Override protected void onDraw(Canvas canvas) { long curTime = android.os.SystemClock.uptimeMillis(); // 第一次播放 if (movieStart == 0) { movieStart = curTime; } if (movie != null) { int duraction = movie.duration(); int relTime = (int) ((curTime - movieStart) % duraction); movie.setTime(relTime); movie.draw(canvas, 0, 0); // 强制重绘 invalidate(); } super.onDraw(canvas); } }
相关文章推荐
- arcgis api for JavaScript相关
- CSS(3)
- 高德提示无本地方法
- js判断是否在微信浏览器中打开
- mysql5.6不能输入中文
- 线性表的顺序列表实现
- sql查找实例语句
- Java实现观察者设计模式
- TBB(Intel Threading Building Blocks)学习笔记
- 数据库的范式
- 协议森林11 涅槃 (TCP重新发送)
- 在hibernate中修改某几个字段的方法
- 继承
- 微软算法100道题------从1到n的正数中1出现的次数
- ListView
- pyhon中利用publicsuffix获得域名
- Jar命令文章分享
- 任意高度图片垂直居中、多行文本垂直居中
- CSS3媒体查询(Media Queries)介绍
- 数值类