这个是搜到的大部分的答案
下面贴出来代码
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.raw.upload)); } @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); } }
然后我用了下为什么代码标红处出错啊(/(ㄒoㄒ)/~~),为什么网上也没找到类似出错的童鞋