package com.ljp.tools.gif; import java.io.InputStream; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import android.content.res.Resources; import android.graphics.Bitmap; public class Gif implements GifAction{ private GifDecoder gifDecoder = null; private Bitmap currentImage = null; public Gif(Resources resource,int resId) { // TODO Auto-generated constructor stub InputStream is = resource.openRawResource(resId); if(gifDecoder != null){ gifDecoder.free(); gifDecoder= null; } gifDecoder = new GifDecoder(is,this); gifDecoder.run(); } @Override public void parseOk(boolean parseStatus, int frameIndex) { // TODO Auto-generated method stub } public List<HashMap<String, Object>> Frame(){ List<HashMap<String, Object>> list = new ArrayList<HashMap<String,Object>>(); for(int i=0;i<=gifDecoder.getFrameCount();i++){ GifFrame frame = gifDecoder.next(); HashMap<String, Object> map = new HashMap<String, Object>(); currentImage = frame.image; map.put("image", currentImage); map.put("delay", frame.delay); list.add(map); } return list; } }