Ich benutze Fresco, um Gif in einem Recyclerview zu laden.Gif blinkt in RecyclerView mit Fresco
Hier ist mein Kotlin Code:
fun loadResizeImage(uri: Uri, view: SimpleDraweeView, width: Int, height: Int) {
val request = ImageRequestBuilder.newBuilderWithSource(uri)
.setResizeOptions(ResizeOptions(width, height)).build()
val controller = Fresco.newDraweeControllerBuilder()
.setOldController(view.controller)
.setImageRequest(request)
.build()
view.controller = controller
Ich spiele nicht die gif, ich laden Sie es einfach als statisches Bild. Aber wenn ich notifydatasetchanged
aufrufen, blinkt das gif. Ich habe supportsChangeAnimations
auf false gesetzt, und nur das gif blinkt. Kann mir jemand helfen?
Sie einen Controller zurücksetzen.Können Sie vermeiden, dass, wenn die Controller-URI nicht geändert hat? Das sollte das Blinken verhindern. – Droidekas
Ich kann die URI als ein Tag für die Ansicht festlegen. Wenn das Tag mit dem URI übereinstimmt, mache ich einfach nicht die Dinge im Block? –
Ja das könnte funktionieren – Droidekas