WindowInsetsAnimation.Callback.OnPrepare(WindowInsetsAnimation) Methode

Definition

Wird aufgerufen, wenn eine Insetanimation beginnt und bevor die Ansichten im Endzustand der Animation angeordnet wurden.

[Android.Runtime.Register("onPrepare", "(Landroid/view/WindowInsetsAnimation;)V", "GetOnPrepare_Landroid_view_WindowInsetsAnimation_Handler", ApiSince=30)]
public virtual void OnPrepare(Android.Views.WindowInsetsAnimation animation);
[<Android.Runtime.Register("onPrepare", "(Landroid/view/WindowInsetsAnimation;)V", "GetOnPrepare_Landroid_view_WindowInsetsAnimation_Handler", ApiSince=30)>]
abstract member OnPrepare : Android.Views.WindowInsetsAnimation -> unit
override this.OnPrepare : Android.Views.WindowInsetsAnimation -> unit

Parameter

animation
WindowInsetsAnimation

Die Animation, die gestartet werden soll.

Attribute

Hinweise

Wird aufgerufen, wenn eine Insetanimation beginnt und bevor die Ansichten im Endzustand der Animation angeordnet wurden. Die Reihenfolge von Ereignissen während einer Insetsanimation lautet wie folgt:

<ul>li Application calls WindowInsetsController#hide(int), WindowInsetsController#show(int), WindowInsetsController#controlWindowInsetsAnimation</li li><>onPrepare is called on the view hierarchy listeners</li li><>View#onApplyWindowInsets li will be called with the end state of the animation</li><View>hierarchy gets layout out to the changes the application has requested due to the new insets being dispatched</li>><#onStart is called <em>before</em>>< die Ansichtshierarchie wird in dem neuen angeordneten Zustand</li li><>#onProgress gezeichnet, unmittelbar nachdem der Animationsanfangszustand</li><li>der Frame gezeichnet wird.</li></ul>

Mit dieser Sortierung kann die Anwendung den Endzustand überprüfen, nachdem die Animation abgeschlossen wurde, und dann zum Startzustand der Animation im ersten #onProgress Rückruf zurückkehren, indem Sie Eigenschaften der Postlayoutansicht wie View#setX und verwandte Methoden verwenden.

Beachten Sie, dass die Animation möglicherweise abgebrochen wird, bevor #onStart sie verteilt wird. Ein android.os.Build.VERSION_CODES#S S und später #onEnd wird sofort ohne #onStart in diesem Fall versendet. Bei android.os.Build.VERSION_CODES#R R, werden keine Rückrufe für #onPrepare eine solche Animation verteilt.

Hinweis: Wenn die Animation mithilfe WindowInsetsController#controlWindowInsetsAnimationder Anwendung gesteuert wird, ist der Endzustand der Animation nicht definiert, da die Anwendung den Endzustand nur durch Übergeben shown des Parameters beim Aufrufen WindowInsetsAnimationController#finishentscheiden kann. In dieser Situation sendet das System die Einsets im entgegengesetzten Sichtbarkeitszustand, bevor die Animation gestartet wird. Beispiel: Beim Steuern der Eingabemethode und WindowInsetsController#controlWindowInsetsAnimation der aktuell angezeigten Eingabemethode wird eine WindowInsets Instanz empfangen, View#onApplyWindowInsets für die WindowInsets#isVisible zurückgegeben falseWindowInsets.Type#imewird.

Java-Dokumentation für android.view.WindowInsetsAnimation.Callback.onPrepare(android.view.WindowInsetsAnimation).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: