2016-01-02 13 views
13

Chcę odtwarzać animowane gify z adresu url w aplikacji na Androida, na przykład aplikacji imgur. Imagur jest wspaniały i bardzo szybki. Ładuję gif z podglądem strony internetowej, ale nie jest on zgodny z oznaczeniem.Jak grać w gif w Androidzie z adresu URL?

+0

można użyć biblioteki slajdów. kratka projektu autorstwa Nicka Butchera pokazuje, jak możesz pokazać gifs.https: //github.com/nickbutcher/plaid – Raghunandan

+0

Odnosi się do tych linków dla tego http://stackoverflow.com/questions/3660209/display-animated-gif I jeszcze jednego identyfikatora http://droid-blog.net/2011/10/14/tutorial-how-to-use-animated-gifs-in-android-part-1/ –

+0

Próbowałem też szybować, ale nie działa. – user3606902

Odpowiedz

10

Można użyć Glide grać gif na ImageView. Tak, niech go dodać do aplikacji Gradle:

repositories { 
    mavenCentral() 
} 

dependencies { 
    compile 'com.github.bumptech.glide:glide:3.6.1' 
    compile 'com.android.support:support-v4:23.1.1' 
} 

Następnie utwórz ImageView:

<ImageView 
    android:id="@+id/imageView" 
    android:contentDescription="@string/content" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"/> 

W swojej działalności:

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); 

Aby uzyskać więcej informacji, otwórz ten post Glide — Displaying Gifs & Videos.

+0

Dziękuję, że działa, ale czas. Potrzebuję szybkich wydruków. – user3606902

+0

@ user3606902, Możesz użyć 'WebView' zamiast: http://stackoverflow.com/a/21018730/3922207 –

+1

To zajmuje czas, ponieważ najpierw zostanie pobrany w pamięci podręcznej. Jeśli chcesz uzyskać szybki wydruk, spakuj go do folderu apk in assets i uzyskaj do niego dostęp. – dhuma1981

0

Łatwym sposobem wyświetlania animowanego GIF bezpośrednio z adresu URL do układu aplikacji jest użycie klasy WebView.

Krok 1: W swojej XML układu

<WebView 
 
android:id="@+id/webView" 
 
android:layout_width="50dp" 
 
android:layout_height="50dp" 
 
/>

Krok 2: W swojej działalności

WebView wb; 
 
wb = (WebView) findViewById(R.id.webView); 
 
wb.loadUrl("https://.......);

Krok 3: W swoim manifest.xml zrobić pozwolenie programu Internet

<uses-permission android:name="android.permission.INTERNET" />

Krok 4: W przypadku, gdy chcesz dokonać GIF przezroczyste tło i zrobić GIF dopasowanie do układu

wb.setBackgroundColor(Color.TRANSPARENT); 
 
wb.getSettings().setLoadWithOverviewMode(true); 
 
wb.getSettings().setUseWideViewPort(true);

Powiązane problemy