2016-05-09 25 views
1

Ich versuche, ein animiertes GIF-Bild in Widget anzuzeigen, und ich habe URL für das Bild. Ich weiß, dass ich WebView in Aktivität mit webView.loadUrl("http://my_url_here.gif") verwenden kann, aber WebView wird in Android Widget nicht unterstützt.Wie man animiertes GIF-Bild in Android Widget anzeigt, das auf Bildschirm zeigt?

Ich hatte bereits URL für das Bild, und ich finde einige Möglichkeiten, keine Bibliotheken von Drittanbietern zu verwenden.

Kann jemand es in Widget anzeigen?

+0

beschreibt Bevor jemand anderes eine andere nicht praktikable Antwort postet, beachten Sie bitte, dass das OP spricht über eine App Widget, die ['RemoteViews'] (http://developer.android.com /guide/topics/appwidgets/index.html#CreatingLayout). –

Antwort

0

Sie können eine Menge verschiedener Bibliotheken zum Laden von Bildern dafür verwenden, aber ich empfehle Fresco. Sie haben große eingebaute in GIF-Unterstützung detaillierte on this page, die wie die folgende in Code aussieht:

Uri uri = Uri.parse("http://my_url_here.gif"); 
DraweeController controller = Fresco.newDraweeControllerBuilder() 
    .setUri(uri) 
    .setAutoPlayAnimations(true) 
    . // other setters 
    .build(); 
mSimpleDraweeView.setController(controller); 

Update

Ich verstehe nie wirklich, wo dieses Bedürfnis zu nicht Bibliotheken verwenden aus den Stängeln, aber Sie Kopieren Sie einfach manuell alle Codeklassen in Ihre App! Der Code in diesen Bibliotheken ist kampfgetestet und funktioniert viel zuverlässiger als die meisten Codes, die Sie alleine schreiben möchten.

Das gesagt, es gibt eine nützliche gist Ich habe in der Vergangenheit verwendet, die möglicherweise das, was Sie suchen.

+0

Danke, aber ich möchte wissen, ob es Wege gibt, ohne die Verwendung von Third-Party-Bibliothek – Huaying

+0

@HuayingHuang Ich habe die Antwort mit einem Kern aktualisiert, die ich in der Vergangenheit verwendet habe - können Sie erklären, warum Sie Bibliotheken nicht verwenden können? Ich bin neugierig. – roarster

0

Sie die gifView Bibliothek verwenden können: https://github.com/koral--/android-gif-drawable

Gebrauch ist dies Ihre .xml: -

<pl.droidsonroids.gif.GifImageView 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:src="@drawable/src_anim" 
    /> 

wo src_anim ist Ihre loader gif-Datei

1

Wo es keine Möglichkeit, GIF-Animation zu zeigen, auf RemoteViews. Sie können nur Widgets verwenden, die in offiziellen documentation