Определение пользовательских анимаций
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Эта страница устарела. Ниже указано новое место хранения документации, которая раньше находилась здесь.
Настройте сенсорную обратную связь
Сенсорная обратная связь в материальном дизайне обеспечивает мгновенное визуальное подтверждение в точке контакта, когда пользователи взаимодействуют с элементами пользовательского интерфейса. Анимация обратной связи по умолчанию для кнопок использует новый класс RippleDrawable
, который осуществляет переходы между различными состояниями с волновым эффектом.
В большинстве случаев вам следует применить эту функцию в XML-представлении, указав фон представления как:
-
?android:attr/selectableItemBackground
для ограниченной пульсации. -
?android:attr/selectableItemBackgroundBorderless
для пульсации, выходящей за пределы представления. Он будет нарисован и ограничен ближайшим родительским элементом представления с ненулевым фоном.
Примечание. selectableItemBackgroundBorderless
— это новый атрибут, представленный на уровне API 21.
Альтернативно вы можете определить RippleDrawable
как ресурс XML, используя элемент ripple
.
Вы можете назначить цвет объектам RippleDrawable
. Чтобы изменить цвет сенсорной обратной связи по умолчанию, используйте атрибут темы android:colorControlHighlight
.
Дополнительные сведения см. в справочнике по API для класса RippleDrawable
.
Используйте эффект раскрытия
См. раздел Создание круговой анимации раскрытия .
Настройте переходы действий
См. Запуск действия с анимацией .
Использовать изогнутое движение
См. раздел «Использование изогнутого движения» .
Анимация изменений состояния представления
См. Использование StateListAnimator для анимации изменений состояния представления .
Анимация векторных рисунков
См. Анимация рисуемой графики .
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-29 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-07-29 UTC."],[],[],null,["# Defining Custom Animations\n\n**This page is deprecated.** See below for the new location for\ndocumentation that used to be here.\n\nCustomize Touch Feedback\n------------------------\n\nTouch feedback in material design provides an instantaneous visual confirmation at the\npoint of contact when users interact with UI elements. The default touch feedback animations\nfor buttons use the new [RippleDrawable](/reference/android/graphics/drawable/RippleDrawable) class, which transitions\nbetween different states with a ripple effect.\n\nIn most cases, you should apply this functionality in your view XML by specifying the view\nbackground as:\n\n- `?android:attr/selectableItemBackground` for a bounded ripple.\n- `?android:attr/selectableItemBackgroundBorderless` for a ripple that extends beyond the view. It will be drawn upon, and bounded by, the nearest parent of the view with a non-null background.\n\n**Note:** `selectableItemBackgroundBorderless` is a new\nattribute introduced in API level 21.\n\nAlternatively, you can define a [RippleDrawable](/reference/android/graphics/drawable/RippleDrawable)\nas an XML resource using the `ripple` element.\n\nYou can assign a color to [RippleDrawable](/reference/android/graphics/drawable/RippleDrawable) objects. To change\nthe default touch feedback color, use the theme's `android:colorControlHighlight`\nattribute.\n\nFor more information, see the API reference for the [RippleDrawable](/reference/android/graphics/drawable/RippleDrawable) class.\n\nUse the Reveal Effect\n---------------------\n\nSee [Create a circular reveal animation](/training/animation/reveal-or-hide-view#Reveal).\n\n\nCustomize Activity Transitions\n------------------------------\n\nSee [Start an Activity with an Animation](/training/transitions/start-activity).\n\nUse Curved Motion\n-----------------\n\nSee [Use curved motion](/training/animation/reposition-view#CurvedMotion).\n\nAnimate View State Changes\n--------------------------\n\nSee [Using StateListAnimator to\nanimate view state changes](/guide/topics/graphics/prop-animation#ViewState).\n\nAnimate Vector Drawables\n------------------------\n\nSee [Animate Drawable Graphics](/guide/topics/graphics/drawable-animation)."]]