2016-09-14 1 views
0

Ich versuche, multiple Bilder (aus dem lokalen Speicher) mit der gleichen zu ersetzen. Nach einer Weile das schwarze Flackern verschwinden und funktioniert gut.SimpleDraweeView schwarz filckering auf Ersatzbild mit Fresco

Sehen Sie das Video: http://sendvid.com/q92ry52l

ich nur tue: mSimpleDraweeView.setImageURI("file://" + imagesList.get(index));

den XML-Code:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <com.facebook.drawee.view.SimpleDraweeView 
     android:id="@+id/fresco_image_view" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_centerHorizontal="true"/> 
</RelativeLayout> 

Ich verwende 'com.facebook.fresco: Fresko: 0.13.0'

SimpleDraweeView. Wie vermeide ich das schwarze Flackern?

Dank

Antwort

1

(full discussion here)

Leider ist dies ein bekanntes Problem. Wenn Sie einen neuen URI festlegen, wird das Platzhalterbild angezeigt, bis das neue Bild bereit ist. Dies ist besonders auffällig, wenn Sie große Bilder haben und diese sehr oft wechseln (wie in Ihrem Beispiel).

Wir werden dies zu einem späteren Zeitpunkt beheben (siehe hierzu pull request). Vorerst können Sie manuell die RetainingDataSourceSupplier Implementierung von der Pull-Anforderung zu einem Projekt kopieren und verwenden Sie es ähnlich das MainActivity.java Beispiel:

PipelineDraweeControllerBuilder builder = Fresco.newDraweeControllerBuilder()... 
builder.setDataSourceSupplier(retainingDataSourceSupplier); 
draweeView.setController(builder.build()); 
Verwandte Themen