Ich baue eine App, wo ich Bilder wischen möchte, als ob sie Fotos auf einem Stapel waren. Mit anderen Worten, wenn ich das oberste Bild wische, möchte ich, dass es animiert, sich in die Richtung des Wischens zu bewegen, und das nächste Bild unter ihm ist die ganze Zeit sichtbar. Um dies zu erreichen, verwende ich einen FrameLayout
und zwei ImageView
Container. Ich wechsle nur, welcher oben ist. In der Zwischenzeit, sobald ein Wischen auftritt, wird das nächste Bild in den ImageView
auf der Rückseite unter Verwendung setBackground(drawable)
geladen. Mein Problem ist, dass das ImageView
auf der Rückseite sein Bild nicht aktualisiert, bis ich bringToFront()
darauf nenne, was bedeutet, dass, wie die oberen ImageView
animiert, das Bild darunter ist falsch, bis die Animation abgeschlossen ist, an welchem Punkt es abrupt ändert richtiges Bild. Ich habe versucht, invalidate()
auf der Rückseite ImageView
nach setBackground(drawable)
anzurufen, aber das funktioniert nicht. Hat jemand irgendwelche Ideen, wie ich das Image aktualisieren kann, während es dahinter steckt?Android: ImageView Hintergrund aktualisieren, während hinter anderen ImageView
UPDATE: Es stellt sich heraus, ich bin gerade nicht sehr darauf heute. Ich habe das falsche ImageView
aktualisiert und weil das Laden des Bildes aus dem Netzwerk gemacht wurde, gab es gerade genug Verzögerung, um mich denken zu lassen, dass es geschah, nachdem die Animation beendet wurde.
Ich muss in AndroidImageSlider schauen, aber in der Zwischenzeit sind diese Schritte im Wesentlichen genau das, was ich tue. Ich wechselte von 'setBackground (drawable)' zu 'setImageDrawable (drawable)', aber das machte keinen Unterschied. Die anderen zwei Schritte sind, was ich tue. Ich denke, das Problem ist, dass 'ImageView' sein Bild nicht aktualisiert, es sei denn, die z-Position ist oben, oder so ähnlich. Ich kann einfach nicht herausfinden, wie man es zwingt, es neu zu zeichnen, bevor es oben ist. – Nick
Vielleicht postest du deinen Code, damit ich ihn überprüfen kann. – Axel
Ich fühle mich verlegen ... Es stellte sich heraus, dass ich den falschen 'ImageView' updated hatte, was das Problem verursacht hat. Ich stimme dir zu, dass du Recht hast, aber ich habe nicht genug Ansehen. Danke für Ihre Hilfe! – Nick