Je veux jouer à un gif animé à partir d'une URL dans une application Android, comme une application imgur. Imgur est superbe et très rapide. Je charge gif avec Webview mais ce n'est pas à la hauteur.
Vous pouvez utiliser Glide pour jouer à gif sur ImageView
. Alors ajoutons-le à la note de votre application:
repositories {
mavenCentral()
}
dependencies {
compile 'com.github.bumptech.glide:glide:3.6.1'
compile 'com.Android.support:support-v4:23.1.1'
}
Ensuite, créez une ImageView
:
<ImageView
Android:id="@+id/imageView"
Android:contentDescription="@string/content"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"/>
Dans votre activité:
Glide
.with(context) // replace with 'this' if it's in activity
.load("http://www.google.com/.../image.gif")
.asGif()
.error(R.drawable.error_image) // show error drawable if the image is not a gif
.into(R.id.imageView);
Pour plus d'informations, ouvrez cet article Glide - Affichage de gifs et de vidéos .
Le moyen le plus simple d’afficher des images GIF animées directement à partir de l’URL dans la présentation de votre application consiste à utiliser la classe WebView.
Étape 1: Dans votre mise en page XML
<WebView
Android:id="@+id/webView"
Android:layout_width="50dp"
Android:layout_height="50dp"
/>
Étape 2: Dans votre activité
WebView wb;
wb = (WebView) findViewById(R.id.webView);
wb.loadUrl("https://.......);
Étape 3: Dans votre manifeste Manifest.XML, autorisez Internet
<uses-permission Android:name="Android.permission.INTERNET" />
Étape 4: Si vous souhaitez rendre votre arrière-plan GIF transparent et l’adapter au mieux à votre mise en page
wb.setBackgroundColor(Color.TRANSPARENT);
wb.getSettings().setLoadWithOverviewMode(true);
wb.getSettings().setUseWideViewPort(true);
Vous pouvez définir imageview comme suit:
<com.example.androidgif.GifView
Android:id="@+id/gifview"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content" />
Suite à ce tutoriel, vous pouvez le faire:
http://Android-er.blogspot.de/2014/03/load-animated-gif-from-internet.html