WindowInsetsAnimation.Callback.OnPrepare(WindowInsetsAnimation) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
インセット アニメーションが開始され、アニメーションの終了状態でビューがレイアウトされる前に呼び出されます。
[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
パラメーター
- animation
- WindowInsetsAnimation
開始しようとしているアニメーション。
- 属性
注釈
インセット アニメーションが開始され、アニメーションの終了状態でビューがレイアウトされる前に呼び出されます。 インセット アニメーション中のイベントの順序は次のとおりです。
<ul><li>アプリケーション呼び出し WindowInsetsController#hide(int)、 WindowInsetsController#show(int)、 ビュー階層リスナーで WindowInsetsController#controlWindowInsetsAnimation</li><li>onPrepare が呼び出されます</li><li>View#onApplyWindowInsets はアニメーションの終了状態で呼び出されます</li><li></li><li>#onStart は <em>before</emと呼ばれます> ビュー階層は、新しいレイアウトされた状態で描画されます</li><li>#onProgress はアニメーション開始状態の直後に呼び出されます</li><li>フレームが描画されます</li></ul>
この順序により、アプリケーションはアニメーションの完了後に終了状態を検査し、#onProgressや関連メソッドなどのレイアウト後のビュー プロパティを使用して、最初のView#setX コールバックのアニメーションの開始状態に戻すことができます。
#onStartがディスパッチされる前に、アニメーションが取り消される可能性があることに注意してください。
android.os.Build.VERSION_CODES#S S以降では、#onEndはその場合、#onStartなしですぐにディスパッチされます。
android.os.Build.VERSION_CODES#R Rでは、このようなアニメーションの#onPrepare後にコールバックはディスパッチされません。
注: アニメーションがWindowInsetsController#controlWindowInsetsAnimationを使用して制御されるアプリケーションの場合、アニメーションの終了状態は未定義になります。アプリケーションは、shownを呼び出すときにパラメーターWindowInsetsAnimationController#finish渡すことによってのみ終了状態を決定できます。 この状況では、システムは、アニメーションが開始される前に、逆の可視性状態のインセットをディスパッチします。 例: WindowInsetsController#controlWindowInsetsAnimationを使用して入力メソッドを制御し、入力メソッドが現在表示されている場合、View#onApplyWindowInsetsはWindowInsetsのWindowInsets#isVisibleを返すfalseWindowInsets.Type#ime インスタンスを受け取ります。
このページの一部は、Androidオープンソースプロジェクトによって作成および共有された作業に基づく変更でありCreative Commons 2.5属性ライセンスに記載されている条件に従って使用されます。