使用Gif图像

时间:2011-11-30 05:54:18

标签: android image gif

我们可以在Android中的任何地方使用Gif图片吗?我在这种类型的图像中使用过一个例子。它只显示为不可移动。

我们如何使用Gif(可移动)图像?这在Android中是否可行?

有人指导我吗?

2 个答案:

答案 0 :(得分:3)

我像这样玩gif图像......

public class GIFDemo extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(new GIFView(this));
    }
    private static class GIFView extends View{

        Movie movie,movie1;
        InputStream is=null,is1=null;
        long moviestart;
        long moviestart1;
        public GIFView(Context context) {
            super(context);
            is=context.getResources().openRawResource(R.drawable.cartoon);
            is1=context.getResources().openRawResource(R.drawable.animated_gif);
            movie=Movie.decodeStream(is);
            movie1=Movie.decodeStream(is1);
            //BitmapFactory.Options opts = new BitmapFactory.Options();
            //opts.inJustDecodeBounds = true;    // this will request the bm
           // opts.inSampleSize = 10;   
            //movie=Movie.decodeFile("C:\\cartoon.gif");
        }

        @Override
        protected void onDraw(Canvas canvas) {
            canvas.drawColor(0xFFCCCCCC);
            super.onDraw(canvas);
            long now=android.os.SystemClock.uptimeMillis();
            System.out.println("now="+now);
             if (moviestart == 0) {   // first time
                 moviestart = now;

             }
             if(moviestart1==0)
             {
                 moviestart1=now;
             }
             System.out.println("\tmoviestart="+moviestart);
             int relTime = (int)((now - moviestart) % movie.duration()) ;
             int relTime1=(int)((now - moviestart1)% movie1.duration());
             System.out.println("time="+relTime+"\treltime="+movie.duration());
             movie.setTime(relTime);
             movie1.setTime(relTime1);
             movie.draw(canvas,10,10);
             movie1.draw(canvas,10,100);
             this.invalidate();
        }
    }
}

答案 1 :(得分:1)

查看this文章。我认为它可以帮助你 有关gif动画的更多信息,请查看此question