Moubeen Farooq Khan
Moubeen Farooq Khan

Reputation: 2885

show gif image in imageview Android

A very strange behaviour, while writing code for showing GIF image in image-view. what i am doing is

 InputStream is = this.getResources().openRawResource(R.drawable.logo);

logo is gif image that is in the drawable folder.

when I write that line of code in Eclipse , image loads successfully but when I import that code on Android Studio What I am seeing is an error on R.drawable.logo

and the error is

Expected Resource of type raw supplying the wrong type of resource identifier. For Example when calling Resources.getString(int id), You should be passing R.string.something not R.drawable.something

one code runs on Eclipse not on Android Studio

I am sure that no problem with the imports.

Upvotes: 0

Views: 1932

Answers (3)

iamnaran
iamnaran

Reputation: 1964

Simple solution is using Glide library

compile 'com.github.bumptech.glide:glide:4.3.1'

And Load your ImageView

Glide.with(YourActivity.this).load(R.drawable.your_gif).into(yourImageView);

Upvotes: 0

ingyesid
ingyesid

Reputation: 2884

you can try using ion https://github.com/koush/ion#load-an-image-into-an-imageview is a nice library for load images and support gif from local store , resorces or from Url.

Upvotes: 0

Moubeen Farooq Khan
Moubeen Farooq Khan

Reputation: 2885

After doing some R&D i have found a work-around for that

and that is instead of creating drawable folder and put that image into it

create assets folder in main/src/assests and paste that image and then open Input steam.

InputStream is = context.getAssets().open("logo.gif");

that worked for me but sill dont know the answer why

  InputStream is = this.getResources().openRawResource(R.drawable.logo);

was not working.

Upvotes: 1

Related Questions