在android项目中包含一个.gif

问题描述:

我的问题是,如何在我的游戏中附加一个小小的gif与我的飞船底部。如果您有任何想法,我很乐意加热它们。 谢谢!在android项目中包含一个.gif

尝试WebView

public class Gif extends WebView 
... 
public Gif (Context context, String url) { 

     super(context); 
     loadUrl(url); 
} 

然后:

Gif gif = new Gif (this, "pathtogif.gif"); 

setContentView(gif); 
+0

有了这个我可以使用我的可绘制文件夹中的gif? –

你好使用这个链接借书
https://github.com/koush/ion

ImageView animatedGifImageView = (ImageView)findViewById(R.id.animatedGifImageView)**strong text**; 

Ion.with(animatedGifImageView) 
     .fitXY() 
     .load("android.resource://" + getPackageName() + "/" + R.drawable.sampleGif); 

我会强烈建议您使用新壁画图书馆(由Facebook制作)。它可以处理各种图像加载,并且可以高度自定义。

  • 最快玩GIF(比离子更快)
  • 使用方便

包含这种依赖到你的build.gradle:

dependencies { 
    // your app's other dependencies 
    compile 'com.facebook.fresco:fresco:0.7.0+' 
} 

这里有一个链接如何设置壁画: http://frescolib.org/docs/getting-started.html#

玩gif你笑uld做这样的事情:

SimpleDraweeView draweeView = (SimpleDraweeView) findViewById(R.id.gif_draweeview); 

Uri uri = Uri.parse("res:///" + R.drawable.gif_animation); 
DraweeController controller = Fresco.newDraweeControllerBuilder() 
      .setUri(uri) 
      .setControllerListener(new ControllerListener<ImageInfo>() { 
       @Override 
       public void onSubmit(String s, Object o) { 

       } 

       @Override 
       public void onFinalImageSet(String s, ImageInfo imageInfo, final Animatable animatable) { 
        if(animatable != null) { 
         animatable.start(); 
        } 
       } 

       @Override 
       public void onIntermediateImageSet(String s, ImageInfo imageInfo) { 

       } 

       @Override 
       public void onIntermediateImageFailed(String s, Throwable throwable) { 

       } 

       @Override 
       public void onFailure(String s, Throwable throwable) { 

       } 

       @Override 
       public void onRelease(String s) { 
       } 
      }) 
      .build(); 
draweeView.setController(controller); 
+0

而且我可以在火星的底部设置火焰吗? –