WindowInsetsAnimation.Callback.OnPrepare(WindowInsetsAnimation) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Вызывается при запуске анимации вставок и до того, как представления будут размещены в конечном состоянии анимации.
[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 Application calls WindowInsetsController#hide(int)
, WindowInsetsController#show(int)
, WindowInsetsController#controlWindowInsetsAnimation
</li><li>onPrepare вызывается в иерархии представлений прослушиватели</li><li liView#onApplyWindowInsets
> будут вызываться с конечным состоянием иерархии анимации</li<>li>Представление выкладывается в соответствии с изменениями, запрошенными приложением из-за новых наборов, отправляемых</li<>li#onStart
> называется <em>before</em>>< Иерархия представлений рисуется в новом расположении state</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
и отображается метод ввода, получает WindowInsets
экземпляр , View#onApplyWindowInsets
для которого WindowInsets#isVisible
возвращается false
значение .WindowInsets.Type#ime
Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License Creative Commons 2.5 Attribution License.