2016-05-25 5 views
2

Ich habe ein paar Google-Suchanfragen und konnte diese nicht herausfinden. Ich versuche, das Google Foto-Verhalten zu duplizieren, dass, wenn man ein Bild kneift, das Bild zurück zu dem Ort wechselt.validieren sharedlement Übergang nach canvas.scale android

alles funktioniert. Das einzige Problem ist, wenn der Rückübergang passiert der Übergang von der alten Vollbild passiert.

um klarer zu sein, skaliere ich den Canvas des rootview meiner Aktivität, so dass alles innerhalb der Aktivität verkleinert wird. In diesem Fall ist der Inhalt in der rootview nur ein Bild. am Ende der Prise der Skalierungsfaktor wird 0.5f sein. (50% der normalen Größe) dann findet der Rückübergang statt und das Problem ist aufgetreten. Der Übergang wird vor der Animation auf die ursprüngliche Größe (100%) skaliert, sodass es so aussieht, als wäre die Skalierung der Leinwand nie erfolgt.

ich hoffe, das ist klar Englisch ist nicht meine Muttersprache.

Code:

canvas.save(Canvas.MATRIX_SAVE_FLAG); 
    canvas.scale(mScaleFactor, mScaleFactor,mScreenX,mScreenY); 

    canvas.rotate(mRotationDegree,mScreenX,mScreenY); 

    super.dispatchDraw(canvas); 
    canvas.restore(); 

Antwort

0

fand ich, dass Leinwand nicht den ganzen Weg nicht aktualisiert, konvertiert i setScaleY und setScaleX auf der Viewgroup

Verwandte Themen