# MotionLayout

Artifact: [androidx.constraintlayout:constraintlayout](https://developer.android.com/jetpack/androidx/releases/constraintlayout) [View Source](https://cs.android.com/search?q=file:androidx/constraintlayout/motion/widget/MotionLayout.java+class:androidx.constraintlayout.motion.widget.MotionLayout) Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

*** ** * ** ***


```
public class MotionLayout extends ConstraintLayout implements NestedScrollingParent3
```

<br />

|---|---|---|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object.html) |||||
| ↳ | [android.view.View](https://developer.android.com/reference/android/view/View.html) ||||
|   | ↳ | [android.view.ViewGroup](https://developer.android.com/reference/android/view/ViewGroup.html) |||
|   |   | ↳ | [androidx.constraintlayout.widget.ConstraintLayout](https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout) ||
|   |   |   | ↳ | [androidx.constraintlayout.motion.widget.MotionLayout](https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout) |

*** ** * ** ***

A subclass of ConstraintLayout that supports animating between various states **Added in 2.0**

A `MotionLayout` is a subclass of `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout` which supports transitions between between various states (`https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintSet`) defined in `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionScene`s.

**Note:** `MotionLayout` is available as a support library that you can use on Android systems starting with API level 14 (ICS).

`MotionLayout` links to and requires a `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionScene` file. The file contains one top level tag "MotionScene"

## LayoutDescription

| Tags | Description |
|---|---|
| `<StateSet> ` | Describes states supported by the system (optional) |
| `<ConstraintSet> ` | Describes a constraint set |
| `<Transition> ` | Describes a transition between two states or ConstraintSets |
| `<ViewTransition> ` | Describes a transition of a View within a states or ConstraintSets |

## Transition

| Attributes | Description |
|---|---|
| android:id | The id of the Transition |
| constraintSetStart | ConstraintSet to be used as the start constraints or a layout file to get the constraint from |
| constraintSetEnd | ConstraintSet to be used as the end constraints or a layout file to get the constraint from |
| motionInterpolator | The ability to set an overall interpolation (easeInOut, linear, etc.) |
| duration | Length of time to take to perform the transition |
| staggered | Overrides the Manhattan distance from the top most view in the list of views. - For any view of stagger value `S(Vi)` - With the transition stagger value of `TS` (from 0.0 - 1.0) - The duration of the animation is `duration` - The views animation duration `DS = duration * (1 -TS)` - Call the stagger fraction `SFi = (S(Vi) - S(V0)) / (S(Vn) - S(V0))` - The view starts animating at: `(duration-DS) * SFi` |
| pathMotionArc | The path will move in arc (quarter ellipses) key words {startVertical \| startHorizontal \| flip \| none } |
| autoTransition | automatically transition from one state to another. key words {none, jumpToStart, jumpToEnd, animateToStart, animateToEnd} |
| transitionFlags | flags that adjust the behaviour of Transitions. supports {none, beginOnFirstDraw} begin on first draw forces the transition's clock to start when it is first displayed not when the begin is called |
| layoutDuringTransition | Configures MotionLayout on how to react to requestLayout calls during transitions. Allowed values are {ignoreRequest, honorRequest} |
| `<OnSwipe> ` | Adds support for touch handling (optional) |
| `<OnClick> ` | Adds support for triggering transition (optional) |
| `<KeyFrameSet> ` | Describes a set of Key object which modify the animation between constraint sets. |

- A transition is typically defined by specifying its start and end ConstraintSets. You also have the possibility to not specify them, in which case such transition will become a Default transition. That Default transition will be applied between any state change that isn't explicitly covered by a transition.
- The starting state of the MotionLayout is defined to be the constraintSetStart of the first transition.
- If no transition is specified (or only a default Transition) the MotionLayout tag must contain a app:currentState to define the starting state of the MotionLayout

## ViewTransition

| Attributes | Description |
|---|---|
| android:id | The id of the ViewTransition |
| viewTransitionMode | currentState, allStates, noState transition affect the state of the view in the current constraintSet or all ConstraintSets or non if noState the ViewTransitions are run asynchronous |
| onStateTransition | actionDown or actionUp run transition if on touch down or up if view matches motionTarget |
| motionInterpolator | The ability to set an overall interpolation key words {easeInOut, linear, etc.} |
| duration | Length of time to take to perform the `ViewTransition` |
| pathMotionArc | The path will move in arc (quarter ellipses) key words {startVertical \| startHorizontal \| flip \| none } |
| motionTarget | Apply ViewTransition matching this string or id. |
| setsTag | set this tag at end of transition |
| clearsTag | clears this tag at end of transition |
| ifTagSet | run transition if this tag is set on view |
| ifTagNotSet | run transition if this tag is not set on view/td\> |
| `<OnSwipe> ` | Adds support for touch handling (optional) |
| `<OnClick> ` | Adds support for triggering transition (optional) |
| `<KeyFrameSet> ` | Describes a set of Key object which modify the animation between constraint sets. |

- A Transition is typically defined by specifying its start and end ConstraintSets. You also have the possibility to not specify them, in which case such transition will become a Default transition. That Default transition will be applied between any state change that isn't explicitly covered by a transition.
- The starting state of the MotionLayout is defined to be the constraintSetStart of the first transition.
- If no transition is specified (or only a default Transition) the MotionLayout tag must contain a app:currentState to define the starting state of the MotionLayout

## OnSwipe (optional)

| Attributes | Description |
|---|---|
| touchAnchorId | Have the drag act as if it is moving the "touchAnchorSide" of this object |
| touchRegionId | Limits the region that the touch can be start in to the bounds of this view (even if the view is invisible) |
| touchAnchorSide | The side of the object to move with {top\|left\|right\|bottom} |
| maxVelocity | limit the maximum velocity (in progress/sec) of the animation will on touch up. Default 4 |
| dragDirection | which side to swipe from {dragUp\|dragDown\|dragLeft\|dragRight} |
| maxAcceleration | how quickly the animation will accelerate (progress/sec/sec) and decelerate on touch up. Default 1.2 |
| dragScale | scale factor to adjust the swipe by. (e.g. 0.5 would require you to move 2x as much) |
| dragThreshold | How much to drag before swipe gesture runs. Important for mult-direction swipe. Default is 10. 1 is very sensitive. |
| moveWhenScrollAtTop | If the swipe is scrolling and View (such as RecyclerView or NestedScrollView) do scroll and transition happen at the same time |
| onTouchUp | Support for various swipe modes autoComplete,autoCompleteToStart,autoCompleteToEnd,stop,decelerate,decelerateAndComplete |

## OnClick (optional)

| Attributes | Description |
|---|---|
| motionTarget | What view triggers Transition. |
| clickAction | Direction for buttons to move the animation. Or (\|) combination of: toggle, transitionToEnd, transitionToStart, jumpToEnd, jumpToStart |

## StateSet

|---|---|
| defaultState | The constraint set or layout to use |
| `<State> ` | The side of the object to move |

## State

|---|---|
| android:id | Id of the State |
| constraints | Id of the ConstraintSet or the Layout file |
| `<Variant> ` | a different constraintSet/layout to choose if the with or height matches |

## Variant

|---|---|
| region_widthLessThan | Match if width less than |
| region_widthMoreThan | Match if width more than |
| region_heightLessThan | Match if height less than |
| region_heightMoreThan | Match if height more than |
| constraints | Id of the ConstraintSet or layout |

## ConstraintSet

|---|---|
| android:id | The id of the ConstraintSet |
| deriveConstraintsFrom | The id of another constraintSet which defines the constraints not define in this set. If not specified the layout defines the undefined constraints. |
| `<Constraint> ` | A ConstraintLayout Constraints + other attributes associated with a view |

## Constraint

Constraint supports two forms:

1: All of ConstraintLayout + the ones listed below + `<CustomAttribute> `.

Or

2: Combination of tags: `<Layout> <PropertySet> <Transform> <Motion> <CustomAttribute> `. The advantage of using these is that if not present the attributes are taken from the base layout file. This saves from replicating all the layout tags if only a Motion tag is needed. If is used then all layout attributes in the base are ignored.

|---|---|
| android:id | Id of the View |
| \[ConstraintLayout attributes\] | Any attribute that is part of ConstraintLayout layout is allowed |
| \[Standard View attributes\] | A collection of view attributes supported by the system (see below) |
| transitionEasing | define an easing curve to be used when animating from this point (e.g. `curve(1.0,0,0,1.0)`) or key words {standard \| accelerate \| decelerate \| linear} |
| pathMotionArc | the path will move in arc (quarter ellipses) or key words {startVertical \| startHorizontal \| none } |
| transitionPathRotate | (float) rotate object relative to path taken |
| drawPath | draw the path the layout will animate animate |
| progress | call method setProgress(float) on this view (used to talk to nested ConstraintLayouts etc.) |
| `<CustomAttribute> ` | call a set"name" method via reflection |
| `<Layout> ` | Attributes for the ConstraintLayout e.g. layout_constraintTop_toTopOf |
| `<PropertySet> ` | currently only visibility, alpha, motionProgress,layout_constraintTag. |
| `<Transform> ` | All the view transform API such as android:rotation. |
| `<Motion> ` | Motion Layout control commands such as transitionEasing and pathMotionArc |

## Layout

|---|---|
| \[ConstraintLayout attributes\] | Also see `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout.LayoutParams` for attributes |

## PropertySet

|---|---|
| visibility | set the Visibility of the view. One of Visible, invisible or gone |
| alpha | setAlpha value |
| motionProgress | using reflection call setProgress |
| layout_constraintTag | a tagging string to identify the type of object |

## Transform

|---|---|
| android:elevation | base z depth of the view. |
| android:rotation | rotation of the view, in degrees. |
| android:rotationX | rotation of the view around the x axis, in degrees. |
| android:rotationY | rotation of the view around the y axis, in degrees. |
| android:scaleX | scale of the view in the x direction |
| android:scaleY | scale of the view in the y direction. |
| android:translationX | translation in x of the view. This value is added post-layout to the left property of the view, which is set by its layout. |
| android:translationY | translation in y of the view. This value is added post-layout to th e top property of the view, which is set by its layout |
| android:translationZ | translation in z of the view. This value is added to its elevation. |

## Motion

|---|---|
| transitionEasing | Defines an acceleration curve. |
| pathMotionArc | Says the object should move in a quarter ellipse unless the motion is vertical or horizontal |
| motionPathRotate | set the rotation to the path of the object + this angle. |
| drawPath | Debugging utility to draw the motion of the path |

## CustomAttribute

|---|---|
| attributeName | The name of the attribute. Case sensitive. ( MyAttr will look for method setMyAttr(...) |
| customColorValue | The value is a color looking setMyAttr(int ) |
| customIntegerValue | The value is an integer looking setMyAttr(int ) |
| customFloatValue | The value is a float looking setMyAttr(float ) |
| customStringValue | The value is a String looking setMyAttr(String ) |
| customDimension | The value is a dimension looking setMyAttr(float ) |
| customBoolean | The value is true or false looking setMyAttr(boolean ) |

## KeyFrameSet

This is the container for a collection of Key objects (such as KeyPosition) which provide information about how the views should move

|---|---|
| `<KeyPosition>` | Controls the layout position during animation |
| `<KeyAttribute>` | Controls the post layout properties during animation |
| `<KeyCycle>` | Controls oscillations with respect to position of post layout properties during animation |
| `<KeyTimeCycle>` | Controls oscillations with respect to time of post layout properties during animation |
| `<KeyTrigger>` | trigger callbacks into code at fixed point during the animation |

## KeyPosition

|---|---|
| motionTarget | Id of the View or a regular expression to match layout_ConstraintTag |
| framePosition | The point along the interpolation 0 = start 100 = end |
| transitionEasing | define an easing curve to be used when animating from this point (e.g. curve(1.0,0,0, 1.0)) or key words {standard \| accelerate \| decelerate \| linear } |
| pathMotionArc | The path will move in arc (quarter ellipses) key words {startVertical \| startHorizontal \| flip \| none } |
| keyPositionType | how this keyframe's deviation for linear path is calculated {deltaRelative \| pathRelative\|parentRelative} |
| percentX | (float) percent distance from start to end along X axis (deltaRelative) or along the path in pathRelative |
| percentY | (float) Percent distance from start to end along Y axis (deltaRelative) or perpendicular to path in pathRelative |
| percentWidth | (float) Percent of change in the width. Note if the width does not change this has no effect.This overrides sizePercent. |
| percentHeight | (float) Percent of change in the width. Note if the width does not change this has no effect.This overrides sizePercent. |
| curveFit | path is traced |
| drawPath | Draw the path of the objects layout takes useful for debugging |
| sizePercent | If the view changes size this controls how growth of the size. (for fixed size objects use KeyAttributes scaleX/X) |
| curveFit | selects a path based on straight lines or a path based on a monotonic spline {linear\|spline} |

## KeyAttribute

|---|---|
| motionTarget | Id of the View or a regular expression to match layout_ConstraintTag |
| framePosition | The point along the interpolation 0 = start 100 = end |
| curveFit | selects a path based on straight lines or a path based on a monotonic spline {linear\|spline} |
| transitionEasing | Define an easing curve to be used when animating from this point (e.g. curve(1.0,0,0, 1.0)) or key words {standard \| accelerate \| decelerate \| linear } |
| transitionPathRotate | (float) rotate object relative to path taken |
| drawPath | draw the path the layout will animate animate |
| motionProgress | call method setProgress(float) on this view (used to talk to nested ConstraintLayouts etc.) |
| \[standard view attributes\](except visibility) | A collection of post layout view attributes see below |
| `<CustomAttribute> ` | call a set"name" method via reflection |

## CustomAttribute

|---|---|
| attributeName | The name of the attribute. Case sensitive. ( MyAttr will look for method setMyAttr(...) |
| customColorValue | The value is a color looking setMyAttr(int ) |
| customIntegerValue | The value is an integer looking setMyAttr(int ) |
| customFloatValue | The value is a float looking setMyAttr(float ) |
| customStringValue | The value is a String looking setMyAttr(String ) |
| customDimension | The value is a dimension looking setMyAttr(float ) |
| customBoolean | The value is true or false looking setMyAttr(boolean ) |

## KeyCycle

|---|---|
| motionTarget | Id of the View or a regular expression to match layout_ConstraintTag |
| framePosition | The point along the interpolation 0 = start 100 = end |
| \[Standard View attributes\] | A collection of view attributes supported by the system (see below) |
| waveShape | The shape of the wave to generate {sin\|square\|triangle\|sawtooth\|reverseSawtooth\|cos\|bounce} |
| wavePeriod | The number of cycles to loop near this region |
| waveOffset | offset value added to the attribute |
| transitionPathRotate | Cycles applied to rotation relative to the path the view is travelling |
| progress | call method setProgress(float) on this view (used to talk to nested ConstraintLayouts etc.) |
| `<CustomAttribute> ` | call a set"name" method via reflection (limited to floats) |

## CustomAttribute

|---|---|
| attributeName | The name of the attribute. Case sensitive. ( MyAttr will look for method setMyAttr(...) |
| customFloatValue | The value is a float looking setMyAttr(float ) |

## KeyTimeCycle

|---|---|
| motionTarget | Id of the View or a regular expression to match layout_ConstraintTag |
| framePosition | The point along the interpolation 0 = start 100 = end |
| \[Standard View attributes\] | A collection of view attributes supported by the system (see below) |
| waveShape | The shape of the wave to generate {sin\|square\|triangle\|sawtooth\|reverseSawtooth\|cos\|bounce} |
| wavePeriod | The number of cycles per second |
| waveOffset | offset value added to the attribute |
| transitionPathRotate | Cycles applied to rotation relative to the path the view is travelling |
| progress | call method setProgress(float) on this view (used to talk to nested ConstraintLayouts etc.) |
| `<CustomAttribute> ` | call a set"name" method via reflection (limited to floats) |

## CustomAttribute

|---|---|
| attributeName | The name of the attribute. Case sensitive. ( MyAttr will look for method setMyAttr(...) |
| customFloatValue | The value is a float looking setMyAttr(float ) |

## KeyTrigger

|---|---|
| motionTarget | Id of the View or a regular expression to match layout_ConstraintTag |
| framePosition | The point along the interpolation 0 = start 100 = end |
| onCross | (method name) on crossing this position call this methods on the t arget |
| onPositiveCross | (method name) on forward crossing of the framePosition call this methods on the target |
| onNegativeCross/td\> | (method name) backward crossing of the framePosition call this methods on the target |
| viewTransitionOnCross | (ViewTransition Id) start a NoState view transition on crossing or hitting target |
| viewTransitionOnPositiveCross | (ViewTransition Id) start a NoState view transition forward crossing of the framePosition or entering target |
| viewTransitionOnNegativeCross/td\> | (ViewTransition Id) start a NoState view transition backward crossing of the framePosition or leaving target |
| triggerSlack | (float) do not call trigger again if the framePosition has not moved this fraction away from the trigger point |
| triggerId | (id) call the TransitionListener with this trigger id |
| motion_postLayoutCollision | Define motion pre or post layout. Post layout is more expensive but captures KeyAttributes or KeyCycle motions. |
| motion_triggerOnCollision | (id) Trigger if the motionTarget collides with the other motionTarget |

## Standard attributes

|---|---|
| android:visibility | Android view attribute that |
| android:alpha | Android view attribute that |
| android:elevation | base z depth of the view. |
| android:rotation | rotation of the view, in degrees. |
| android:rotationX | rotation of the view around the x axis, in degrees. |
| android:rotationY | rotation of the view around the y axis, in degrees. |
| android:scaleX | scale of the view in the x direction. |
| android:scaleY | scale of the view in the y direction. |
| android:translationX | translation in x of the view. |
| android:translationY | translation in y of the view. |
| android:translationZ | translation in z of the view. |

## Summary

| ### Nested types |
|---|
| `protected interface https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout.MotionTracker` Subclasses can override to build test frameworks |
| `public interface https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout.TransitionListener` Listener for monitoring events about TransitionLayout. |

| ### Constants |
|---|---|
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#DEBUG_SHOW_NONE() = 0` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#DEBUG_SHOW_PATH() = 2` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#DEBUG_SHOW_PROGRESS() = 1` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#TOUCH_UP_COMPLETE() = 0` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#TOUCH_UP_COMPLETE_TO_END() = 2` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#TOUCH_UP_COMPLETE_TO_START() = 1` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#TOUCH_UP_DECELERATE() = 4` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#TOUCH_UP_DECELERATE_AND_COMPLETE() = 5` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#TOUCH_UP_NEVER_TO_END() = 7` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#TOUCH_UP_NEVER_TO_START() = 6` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#TOUCH_UP_STOP() = 3` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#VELOCITY_LAYOUT() = 1` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#VELOCITY_POST_LAYOUT() = 0` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#VELOCITY_STATIC_LAYOUT() = 3` |
| `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#VELOCITY_STATIC_POST_LAYOUT() = 2` |

| ### Public fields |
|---|---|
| `static boolean` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#IS_IN_EDIT_MODE()` |

| ### Protected fields |
|---|---|
| `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#mMeasureDuringTransition()` |

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#MotionLayout(android.content.Context)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/content/Context.html context)` |
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#MotionLayout(android.content.Context,android.util.AttributeSet)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/content/Context.html context, @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/android/util/AttributeSet.html attrs)` |
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#MotionLayout(android.content.Context,android.util.AttributeSet,int)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/content/Context.html context, @https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/android/util/AttributeSet.html attrs, int defStyleAttr )` |

| ### Public methods |
|---|---|
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#addTransitionListener(androidx.constraintlayout.motion.widget.MotionLayout.TransitionListener)(https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout.TransitionListener listener)` adds a listener to be notified of drawer events. |
| `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#applyViewTransition(int,androidx.constraintlayout.motion.widget.MotionController)( int viewTransitionId, https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionController motionController )` Apply the view transitions keyFrames to the MotionController. |
| `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintSet` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#cloneConstraintSet(int)(int id)` Creates a ConstraintSet based on an existing constraintSet. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#enableTransition(int,boolean)(int transitionID, boolean enable)` Disable the transition based on transitionID |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#enableViewTransition(int,boolean)(int viewTransitionId, boolean enable)` Enable a ViewTransition ID. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#fireTrigger(int,boolean,float)(int triggerId, boolean positive, float progress)` This causes the callback onTransitionTrigger to be called |
| `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintSet` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getConstraintSet(int)(int id)` Get the ConstraintSet associated with an id This returns a link to the constraintSet But in most cases can be used. createConstraintSet makes a copy which is more expensive. |
| `@https://developer.android.com/reference/androidx/annotation/IdRes int[]` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getConstraintSetIds()()` Get the id's of all constraintSets used by MotionLayout |
| `int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getCurrentState()()` Return the current state id |
| `https://developer.android.com/reference/java/util/ArrayList.html<https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionScene.Transition>` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getDefinedTransitions()()` Get all Transitions known to the system. |
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/DesignTool` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getDesignTool()()` |
| `int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getEndState()()` Gets the state you are currently transition to. |
| `int[]` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getMatchingConstraintSetIds(java.lang.String...)(String[] types)` Get the id's of all constraintSets with the matching types |
| `float` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getProgress()()` Get current position during an animation. |
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionScene` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getScene()()` Get the motion scene of the layout. |
| `int` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getStartState()()` Gets the state you are currently transitioning from. |
| `float` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getTargetPosition()()` Gets the position you are animating to typically 0 or 1. |
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionScene.Transition` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getTransition(int)(int id)` This returns the internal Transition Structure |
| `https://developer.android.com/reference/android/os/Bundle.html` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getTransitionState()()` |
| `long` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getTransitionTimeMs()()` Gets the time of the currently set animation. |
| `float` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getVelocity()()` Returns the last velocity used in the transition |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getViewVelocity(android.view.View,float,float,float[],int)( https://developer.android.com/reference/android/view/View.html view, float posOnViewX, float posOnViewY, float[] returnVelocity, int type )` Returns the last layout velocity used in the transition |
| `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#isDelayedApplicationOfInitialState()()` Is initial state changes are applied during onAttachedToWindow or after. |
| `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#isInRotation()()` |
| `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#isInteractionEnabled()()` Determines whether MotionLayout's touch \&click handling are enabled. |
| `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#isViewTransitionEnabled(int)(int viewTransitionId)` Is transition id enabled or disabled |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#jumpToState(int)(int id)` This jumps to a state It will be at that state after one repaint cycle If the current transition contains that state. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#loadLayoutDescription(int)(int motionScene)` This overrides ConstraintLayout and only accepts a MotionScene. |
| `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onInterceptTouchEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` Intercepts the touch event to correctly handle touch region id handover |
| `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onNestedFling(android.view.View,float,float,boolean)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target, float velocityX, float velocityY, boolean consumed )` |
| `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onNestedPreFling(android.view.View,float,float)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target, float velocityX, float velocityY)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onNestedPreScroll(android.view.View,int,int,int[],int)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target, int dx, int dy, @https://developer.android.com/reference/androidx/annotation/NonNull int[] consumed, int type )` React to a nested scroll in progress before the target view consumes a portion of the scroll. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onNestedScroll(android.view.View,int,int,int,int,int)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target, int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed, int type )` React to a nested scroll in progress. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onNestedScroll(android.view.View,int,int,int,int,int,int[])( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target, int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed, int type, int[] consumed )` React to a nested scroll in progress. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onNestedScrollAccepted(android.view.View,android.view.View,int,int)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html child, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target, int axes, int type )` React to the successful claiming of a nested scroll operation. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onRtlPropertiesChanged(int)(int layoutDirection)` |
| `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onStartNestedScroll(android.view.View,android.view.View,int,int)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html child, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target, int axes, int type )` React to a descendant view initiating a nestable scroll operation, claiming the nested scroll operation if appropriate. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onStopNestedScroll(android.view.View,int)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target, int type)` React to a nested scroll operation ending. |
| `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onTouchEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onViewAdded(android.view.View)(https://developer.android.com/reference/android/view/View.html view)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onViewRemoved(android.view.View)(https://developer.android.com/reference/android/view/View.html view)` |
| `void` | `[rebuildMotion](https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#rebuildMotion())()` **This method is deprecated.** Please call rebuildScene() instead. <br /> |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#rebuildScene()()` rebuild the motion Layouts |
| `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#removeTransitionListener(androidx.constraintlayout.motion.widget.MotionLayout.TransitionListener)(https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout.TransitionListener listener)` adds a listener to be notified of drawer events. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#requestLayout()()` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#rotateTo(int,int)(int id, int duration)` Rotate the layout based on the angle to a ConstraintSet |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#scheduleTransitionTo(int)(int id)` on completing the current transition, transition to this state. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setDebugMode(int)(int debugMode)` Display the debugging information such as paths information |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setDelayedApplicationOfInitialState(boolean)(boolean delayedApply)` Initial state changes are applied during onAttachedToWindow unless this is set to true. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setInteractionEnabled(boolean)(boolean enabled)` Enables (or disables) MotionLayout's onClick and onSwipe handling. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setInterpolatedProgress(float)(float pos)` Set the transition position between 0 an 1 |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setOnHide(float)(float progress)` Notify OnHide motion helpers |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setOnShow(float)(float progress)` Notify OnShow motion helpers |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setProgress(float)(float pos)` Set the transition position between 0 an 1 |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setProgress(float,float)(float pos, float velocity)` Set the transition position between 0 an 1 |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setScene(androidx.constraintlayout.motion.widget.MotionScene)(https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionScene scene)` Sets a motion scene to the layout. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setState(int,int,int)(int id, int screenWidth, int screenHeight)` Set the State of the Constraint layout. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setTransition(int)(int transitionId)` Set a transition explicitly to a Transition that has an ID The transition must have been named with android:id=... |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setTransition(int,int)(int beginId, int endId)` Set a transition explicitly between two constraint sets |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setTransitionDuration(int)(int milliseconds)` Change the current Transition duration. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setTransitionListener(androidx.constraintlayout.motion.widget.MotionLayout.TransitionListener)(https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout.TransitionListener listener)` Set a listener to be notified of drawer events. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setTransitionState(android.os.Bundle)(https://developer.android.com/reference/android/os/Bundle.html bundle)` Set the transition state as a bundle |
| `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#toString()()` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#touchAnimateTo(int,float,float)(int touchUpMode, float position, float currentVelocity)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#touchSpringTo(float,float)(float position, float currentVelocity)` Allows you to use trigger spring motion touch behaviour. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#transitionToEnd()()` Animate to the ending position of the current transition. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#transitionToEnd(java.lang.Runnable)(https://developer.android.com/reference/java/lang/Runnable.html onComplete)` Animate to the ending position of the current transition. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#transitionToStart()()` Animate to the starting position of the current transition. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#transitionToStart(java.lang.Runnable)(https://developer.android.com/reference/java/lang/Runnable.html onComplete)` Animate to the starting position of the current transition. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#transitionToState(int)(int id)` Animate to the state defined by the id. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#transitionToState(int,int)(int id, int duration)` Animate to the state defined by the id. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#transitionToState(int,int,int)(int id, int screenWidth, int screenHeight)` Animate to the state defined by the id. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#transitionToState(int,int,int,int)( int id, int screenWidth, int screenHeight, int duration )` Animate to the state defined by the id. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#updateState()()` Not sure we want this |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#updateState(int,androidx.constraintlayout.widget.ConstraintSet)(int stateId, https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintSet set)` update a ConstraintSet under the id. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#updateStateAnimate(int,androidx.constraintlayout.widget.ConstraintSet,int)(int stateId, https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintSet set, int duration)` Update a ConstraintSet but animate the change. |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#viewTransition(int,android.view.View...)(int viewTransitionId, View[] view)` Execute a ViewTransition. |

| ### Protected methods |
|---|---|
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#dispatchDraw(android.graphics.Canvas)(https://developer.android.com/reference/android/graphics/Canvas.html canvas)` Used to draw debugging graphics and to do post layout changes |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#fireTransitionCompleted()()` This causes the callback TransitionCompleted to be called |
| `long` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#getNanoTime()()` Subclasses can override to define testClasses |
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout.MotionTracker` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#obtainVelocityTracker()()` Subclasses can override to build test frameworks |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onAttachedToWindow()()` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onLayout(boolean,int,int,int,int)(boolean changed, int left, int top, int right, int bottom)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#onMeasure(int,int)(int widthMeasureSpec, int heightMeasureSpec)` |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#parseLayoutDescription(int)(int id)` block ConstraintLayout from handling layout description |
| `void` | `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#setTransition(androidx.constraintlayout.motion.widget.MotionScene.Transition)(https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionScene.Transition transition)` |

| ### Inherited Constants |
|---|
| From [androidx.constraintlayout.widget.ConstraintLayout](https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout) |---|---| | `static final int` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#DESIGN_INFO_ID() = 0` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#VERSION() = "ConstraintLayout-2.2.0-alpha04"` | |
| From [android.view.View](https://developer.android.com/reference/android/view/View.html) |---|---| | `static final int` | `https://developer.android.com/reference/android/view/View.html#ACCESSIBILITY_DATA_SENSITIVE_AUTO = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#ACCESSIBILITY_DATA_SENSITIVE_NO = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#ACCESSIBILITY_DATA_SENSITIVE_YES = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#ACCESSIBILITY_LIVE_REGION_ASSERTIVE = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#ACCESSIBILITY_LIVE_REGION_NONE = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#ACCESSIBILITY_LIVE_REGION_POLITE = 1` | | `static final https://developer.android.com/reference/android/util/Property.html<https://developer.android.com/reference/android/view/View.html, https://developer.android.com/reference/java/lang/Float.html>` | `https://developer.android.com/reference/android/view/View.html#ALPHA` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS = 1` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE = "creditCardExpirationDate"` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY = "creditCardExpirationDay"` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH = "creditCardExpirationMonth"` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR = "creditCardExpirationYear"` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_HINT_CREDIT_CARD_NUMBER = "creditCardNumber"` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE = "creditCardSecurityCode"` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_HINT_EMAIL_ADDRESS = "emailAddress"` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_HINT_NAME = "name"` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_HINT_PASSWORD = "password"` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_HINT_PHONE = "phone"` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_HINT_POSTAL_ADDRESS = "postalAddress"` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_HINT_POSTAL_CODE = "postalCode"` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_HINT_USERNAME = "username"` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_TYPE_DATE = 4` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_TYPE_LIST = 3` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_TYPE_NONE = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_TYPE_TEXT = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#AUTOFILL_TYPE_TOGGLE = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#CONTENT_SENSITIVITY_AUTO = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#CONTENT_SENSITIVITY_NOT_SENSITIVE = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#CONTENT_SENSITIVITY_SENSITIVE = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#DRAG_FLAG_ACCESSIBILITY_ACTION = 1024` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#DRAG_FLAG_GLOBAL = 256` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION = 64` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION = 128` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#DRAG_FLAG_GLOBAL_SAME_APPLICATION = 4096` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#DRAG_FLAG_GLOBAL_URI_READ = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#DRAG_FLAG_GLOBAL_URI_WRITE = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#DRAG_FLAG_HIDE_CALLING_TASK_ON_DRAG_START = 16384` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#DRAG_FLAG_OPAQUE = 512` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#DRAG_FLAG_START_INTENT_SENDER_ON_UNHANDLED_DRAG = 8192` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#DRAWING_CACHE_QUALITY_AUTO = 0` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#DRAWING_CACHE_QUALITY_HIGH = 1048576` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#DRAWING_CACHE_QUALITY_LOW = 524288` **This field is deprecated.** | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#EMPTY_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#ENABLED_FOCUSED_SELECTED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#ENABLED_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#ENABLED_SELECTED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#ENABLED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#ENABLED_WINDOW_FOCUSED_STATE_SET` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#FIND_VIEWS_WITH_CONTENT_DESCRIPTION = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#FIND_VIEWS_WITH_TEXT = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#FOCUSABLE = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#FOCUSABLES_ALL = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#FOCUSABLES_TOUCH_MODE = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#FOCUSABLE_AUTO = 16` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#FOCUSED_SELECTED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#FOCUSED_WINDOW_FOCUSED_STATE_SET` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#FOCUS_BACKWARD = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#FOCUS_DOWN = 130` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#FOCUS_FORWARD = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#FOCUS_LEFT = 17` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#FOCUS_RIGHT = 66` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#FOCUS_UP = 33` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#GONE = 8` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#HAPTIC_FEEDBACK_ENABLED = 268435456` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_ACCESSIBILITY_AUTO = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_ACCESSIBILITY_NO = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS = 4` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_ACCESSIBILITY_YES = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_AUTOFILL_AUTO = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_AUTOFILL_NO = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS = 8` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_AUTOFILL_YES = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS = 4` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_CONTENT_CAPTURE_AUTO = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_CONTENT_CAPTURE_NO = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS = 8` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_CONTENT_CAPTURE_YES = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#IMPORTANT_FOR_CONTENT_CAPTURE_YES_EXCLUDE_DESCENDANTS = 4` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#INVISIBLE = 4` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#KEEP_SCREEN_ON = 67108864` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#LAYER_TYPE_HARDWARE = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#LAYER_TYPE_NONE = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#LAYER_TYPE_SOFTWARE = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#LAYOUT_DIRECTION_INHERIT = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#LAYOUT_DIRECTION_LOCALE = 3` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#LAYOUT_DIRECTION_LTR = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#LAYOUT_DIRECTION_RTL = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#MEASURED_HEIGHT_STATE_SHIFT = 16` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#MEASURED_SIZE_MASK = 16777215` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#MEASURED_STATE_MASK = -16777216` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#MEASURED_STATE_TOO_SMALL = 16777216` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#NOT_FOCUSABLE = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#NO_ID = -1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#OVER_SCROLL_ALWAYS = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#OVER_SCROLL_IF_CONTENT_SCROLLS = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#OVER_SCROLL_NEVER = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#POINTER_CAPTURE_MODE_ABSOLUTE = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#POINTER_CAPTURE_MODE_RELATIVE = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#POINTER_CAPTURE_MODE_UNCAPTURED = 0` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_ENABLED_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_ENABLED_SELECTED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_ENABLED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_FOCUSED_SELECTED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_SELECTED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#PRESSED_WINDOW_FOCUSED_STATE_SET` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#RECTANGLE_ON_SCREEN_REQUEST_SOURCE_INPUT_FOCUS = 3` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#RECTANGLE_ON_SCREEN_REQUEST_SOURCE_SCROLL_ONLY = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#RECTANGLE_ON_SCREEN_REQUEST_SOURCE_TEXT_CURSOR = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#RECTANGLE_ON_SCREEN_REQUEST_SOURCE_UNDEFINED = 0` | | `static final float` | `https://developer.android.com/reference/android/view/View.html#REQUESTED_FRAME_RATE_CATEGORY_DEFAULT` | | `static final float` | `https://developer.android.com/reference/android/view/View.html#REQUESTED_FRAME_RATE_CATEGORY_HIGH = -4.0f` | | `static final float` | `https://developer.android.com/reference/android/view/View.html#REQUESTED_FRAME_RATE_CATEGORY_LOW = -2.0f` | | `static final float` | `https://developer.android.com/reference/android/view/View.html#REQUESTED_FRAME_RATE_CATEGORY_NORMAL = -3.0f` | | `static final float` | `https://developer.android.com/reference/android/view/View.html#REQUESTED_FRAME_RATE_CATEGORY_NO_PREFERENCE = -1.0f` | | `static final https://developer.android.com/reference/android/util/Property.html<https://developer.android.com/reference/android/view/View.html, https://developer.android.com/reference/java/lang/Float.html>` | `https://developer.android.com/reference/android/view/View.html#ROTATION` | | `static final https://developer.android.com/reference/android/util/Property.html<https://developer.android.com/reference/android/view/View.html, https://developer.android.com/reference/java/lang/Float.html>` | `https://developer.android.com/reference/android/view/View.html#ROTATION_X` | | `static final https://developer.android.com/reference/android/util/Property.html<https://developer.android.com/reference/android/view/View.html, https://developer.android.com/reference/java/lang/Float.html>` | `https://developer.android.com/reference/android/view/View.html#ROTATION_Y` | | `static final https://developer.android.com/reference/android/util/Property.html<https://developer.android.com/reference/android/view/View.html, https://developer.android.com/reference/java/lang/Float.html>` | `https://developer.android.com/reference/android/view/View.html#SCALE_X` | | `static final https://developer.android.com/reference/android/util/Property.html<https://developer.android.com/reference/android/view/View.html, https://developer.android.com/reference/java/lang/Float.html>` | `https://developer.android.com/reference/android/view/View.html#SCALE_Y` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCREEN_STATE_OFF = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCREEN_STATE_ON = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLLBARS_INSIDE_INSET = 16777216` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLLBARS_INSIDE_OVERLAY = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLLBARS_OUTSIDE_INSET = 50331648` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLLBARS_OUTSIDE_OVERLAY = 33554432` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLLBAR_POSITION_DEFAULT = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLLBAR_POSITION_LEFT = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLLBAR_POSITION_RIGHT = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLL_AXIS_HORIZONTAL = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLL_AXIS_NONE = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLL_AXIS_VERTICAL = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLL_CAPTURE_HINT_AUTO = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLL_CAPTURE_HINT_EXCLUDE = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLL_CAPTURE_HINT_EXCLUDE_DESCENDANTS = 4` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLL_CAPTURE_HINT_INCLUDE = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLL_INDICATOR_BOTTOM = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLL_INDICATOR_END = 32` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLL_INDICATOR_LEFT = 4` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLL_INDICATOR_RIGHT = 8` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLL_INDICATOR_START = 16` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SCROLL_INDICATOR_TOP = 1` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#SELECTED_STATE_SET` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#SELECTED_WINDOW_FOCUSED_STATE_SET` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SOUND_EFFECTS_ENABLED = 134217728` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#STATUS_BAR_HIDDEN = 1` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#STATUS_BAR_VISIBLE = 0` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_FLAG_FULLSCREEN = 4` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_FLAG_HIDE_NAVIGATION = 2` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_FLAG_IMMERSIVE = 2048` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_FLAG_IMMERSIVE_STICKY = 4096` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN = 1024` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION = 512` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_FLAG_LAYOUT_STABLE = 256` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR = 16` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_FLAG_LIGHT_STATUS_BAR = 8192` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_FLAG_LOW_PROFILE = 1` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_FLAG_VISIBLE = 0` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#SYSTEM_UI_LAYOUT_FLAGS = 1536` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_ALIGNMENT_CENTER = 4` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_ALIGNMENT_GRAVITY = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_ALIGNMENT_INHERIT = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_ALIGNMENT_TEXT_END = 3` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_ALIGNMENT_TEXT_START = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_ALIGNMENT_VIEW_END = 6` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_ALIGNMENT_VIEW_START = 5` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_DIRECTION_ANY_RTL = 2` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_DIRECTION_FIRST_STRONG = 1` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_DIRECTION_FIRST_STRONG_LTR = 6` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_DIRECTION_FIRST_STRONG_RTL = 7` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_DIRECTION_INHERIT = 0` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_DIRECTION_LOCALE = 5` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_DIRECTION_LTR = 3` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#TEXT_DIRECTION_RTL = 4` | | `static final https://developer.android.com/reference/android/util/Property.html<https://developer.android.com/reference/android/view/View.html, https://developer.android.com/reference/java/lang/Float.html>` | `https://developer.android.com/reference/android/view/View.html#TRANSLATION_X` | | `static final https://developer.android.com/reference/android/util/Property.html<https://developer.android.com/reference/android/view/View.html, https://developer.android.com/reference/java/lang/Float.html>` | `https://developer.android.com/reference/android/view/View.html#TRANSLATION_Y` | | `static final https://developer.android.com/reference/android/util/Property.html<https://developer.android.com/reference/android/view/View.html, https://developer.android.com/reference/java/lang/Float.html>` | `https://developer.android.com/reference/android/view/View.html#TRANSLATION_Z` | | `static final https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#VIEW_LOG_TAG = "View"` | | `static final int` | `https://developer.android.com/reference/android/view/View.html#VISIBLE = 0` | | `static final int[]` | `https://developer.android.com/reference/android/view/View.html#WINDOW_FOCUSED_STATE_SET` | | `static final https://developer.android.com/reference/android/util/Property.html<https://developer.android.com/reference/android/view/View.html, https://developer.android.com/reference/java/lang/Float.html>` | `https://developer.android.com/reference/android/view/View.html#X` | | `static final https://developer.android.com/reference/android/util/Property.html<https://developer.android.com/reference/android/view/View.html, https://developer.android.com/reference/java/lang/Float.html>` | `https://developer.android.com/reference/android/view/View.html#Y` | | `static final https://developer.android.com/reference/android/util/Property.html<https://developer.android.com/reference/android/view/View.html, https://developer.android.com/reference/java/lang/Float.html>` | `https://developer.android.com/reference/android/view/View.html#Z` | |
| From [android.view.ViewGroup](https://developer.android.com/reference/android/view/ViewGroup.html) |---|---| | `static final int` | `https://developer.android.com/reference/android/view/ViewGroup.html#CLIP_TO_PADDING_MASK = 34` | | `static final int` | `https://developer.android.com/reference/android/view/ViewGroup.html#FOCUS_AFTER_DESCENDANTS = 262144` | | `static final int` | `https://developer.android.com/reference/android/view/ViewGroup.html#FOCUS_BEFORE_DESCENDANTS = 131072` | | `static final int` | `https://developer.android.com/reference/android/view/ViewGroup.html#FOCUS_BLOCK_DESCENDANTS = 393216` | | `static final int` | `https://developer.android.com/reference/android/view/ViewGroup.html#LAYOUT_MODE_CLIP_BOUNDS = 0` | | `static final int` | `https://developer.android.com/reference/android/view/ViewGroup.html#LAYOUT_MODE_OPTICAL_BOUNDS = 1` | | `static final int` | `https://developer.android.com/reference/android/view/ViewGroup.html#PERSISTENT_ALL_CACHES = 3` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/ViewGroup.html#PERSISTENT_ANIMATION_CACHE = 1` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/ViewGroup.html#PERSISTENT_NO_CACHE = 0` **This field is deprecated.** | | `static final int` | `https://developer.android.com/reference/android/view/ViewGroup.html#PERSISTENT_SCROLLING_CACHE = 2` **This field is deprecated.** | |

| ### Inherited fields |
|---|
| From [androidx.constraintlayout.widget.ConstraintLayout](https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout) |---|---| | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayoutStates` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#mConstraintLayoutSpec()` | | `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#mDirtyHierarchy()` | | `https://developer.android.com/reference/androidx/constraintlayout/core/widgets/ConstraintWidgetContainer` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#mLayoutWidget()` | |

| ### Inherited methods |
|---|
| From [androidx.constraintlayout.widget.ConstraintLayout](https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout) |---|---| | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#addValueModifier(androidx.constraintlayout.widget.ConstraintLayout.ValueModifier)(https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout.ValueModifier modifier)` a ValueModify to the ConstraintLayout. | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#applyConstraintsFromLayoutParams(boolean,android.view.View,androidx.constraintlayout.core.widgets.ConstraintWidget,androidx.constraintlayout.widget.ConstraintLayout.LayoutParams,android.util.SparseArray<androidx.constraintlayout.core.widgets.ConstraintWidget>)( boolean isInEditMode, https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/androidx/constraintlayout/core/widgets/ConstraintWidget widget, https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout.LayoutParams layoutParams, https://developer.android.com/reference/android/util/SparseArray.html<https://developer.android.com/reference/androidx/constraintlayout/core/widgets/ConstraintWidget> idToWidget )` | | `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#checkLayoutParams(android.view.ViewGroup.LayoutParams)(https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html p)` | | `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#dynamicUpdateConstraints(int,int)(int widthMeasureSpec, int heightMeasureSpec)` This can be overridden to change the way Modifiers are used. | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#fillMetrics(androidx.constraintlayout.core.Metrics)(https://developer.android.com/reference/androidx/constraintlayout/core/Metrics metrics)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#forceLayout()()` | | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout.LayoutParams` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#generateDefaultLayoutParams()()` | | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout.LayoutParams` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#generateLayoutParams(android.util.AttributeSet)(https://developer.android.com/reference/android/util/AttributeSet.html attrs)` | | `https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#generateLayoutParams(android.view.ViewGroup.LayoutParams)(https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html p)` | | `https://developer.android.com/reference/java/lang/Object.html` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#getDesignInformation(int,java.lang.Object)(int type, https://developer.android.com/reference/java/lang/Object.html value)` | | `int` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#getMaxHeight()()` The maximum height of this view. | | `int` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#getMaxWidth()()` | | `int` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#getMinHeight()()` The minimum height of this view. | | `int` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#getMinWidth()()` The minimum width of this view. | | `int` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#getOptimizationLevel()()` Return the current optimization level for the layout resolution | | `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#getSceneString()()` Returns a JSON5 string useful for debugging the constraints actually applied. | | `static https://developer.android.com/reference/androidx/constraintlayout/widget/SharedValues` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#getSharedValues()()` Returns the SharedValues instance, creating it if it doesn't exist. | | `https://developer.android.com/reference/android/view/View.html` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#getViewById(int)(int id)` | | `final https://developer.android.com/reference/androidx/constraintlayout/core/widgets/ConstraintWidget` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#getViewWidget(android.view.View)(https://developer.android.com/reference/android/view/View.html view)` | | `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#isRtl()()` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#resolveMeasuredDimension(int,int,int,int,boolean,boolean)( int widthMeasureSpec, int heightMeasureSpec, int measuredWidth, int measuredHeight, boolean isWidthMeasuredTooSmall, boolean isHeightMeasuredTooSmall )` Handles calling setMeasuredDimension() | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#resolveSystem(androidx.constraintlayout.core.widgets.ConstraintWidgetContainer,int,int,int)( https://developer.android.com/reference/androidx/constraintlayout/core/widgets/ConstraintWidgetContainer layout, int optimizationLevel, int widthMeasureSpec, int heightMeasureSpec )` Handles measuring a layout | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#setConstraintSet(androidx.constraintlayout.widget.ConstraintSet)(https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintSet set)` Sets a ConstraintSet object to manage constraints. | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#setDesignInformation(int,java.lang.Object,java.lang.Object)(int type, https://developer.android.com/reference/java/lang/Object.html value1, https://developer.android.com/reference/java/lang/Object.html value2)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#setId(int)(int id)` | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#setMaxHeight(int)(int value)` Set the max height for this view | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#setMaxWidth(int)(int value)` Set the max width for this view | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#setMinHeight(int)(int value)` Set the min height for this view | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#setMinWidth(int)(int value)` Set the min width for this view | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#setOnConstraintsChanged(androidx.constraintlayout.widget.ConstraintsChangedListener)( https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintsChangedListener constraintsChangedListener )` Notify of constraints changed | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#setOptimizationLevel(int)(int level)` Set the optimization for the layout resolution. | | `void` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#setSelfDimensionBehaviour(androidx.constraintlayout.core.widgets.ConstraintWidgetContainer,int,int,int,int)( https://developer.android.com/reference/androidx/constraintlayout/core/widgets/ConstraintWidgetContainer layout, int widthMode, int widthSize, int heightMode, int heightSize )` | | `boolean` | `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintLayout#shouldDelayChildPressedState()()` | |
| From [androidx.core.view.NestedScrollingParent](https://developer.android.com/reference/androidx/core/view/NestedScrollingParent) |---|---| | `abstract int` | `https://developer.android.com/reference/androidx/core/view/NestedScrollingParent#getNestedScrollAxes()()` Return the current axes of nested scrolling for this NestedScrollingParent. | | `abstract void` | `https://developer.android.com/reference/androidx/core/view/NestedScrollingParent#onNestedPreScroll(android.view.View,int,int,int[])( @https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/view/View.html target, int dx, int dy, @https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html int[] consumed )` React to a nested scroll in progress before the target view consumes a portion of the scroll. | | `abstract void` | `https://developer.android.com/reference/androidx/core/view/NestedScrollingParent#onNestedScroll(android.view.View,int,int,int,int)( @https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/view/View.html target, int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed )` React to a nested scroll in progress. | | `abstract void` | `https://developer.android.com/reference/androidx/core/view/NestedScrollingParent#onNestedScrollAccepted(android.view.View,android.view.View,int)(@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/view/View.html child, @https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/view/View.html target, int axes)` React to the successful claiming of a nested scroll operation. | | `abstract boolean` | `https://developer.android.com/reference/androidx/core/view/NestedScrollingParent#onStartNestedScroll(android.view.View,android.view.View,int)(@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/view/View.html child, @https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/view/View.html target, int axes)` React to a descendant view initiating a nestable scroll operation, claiming the nested scroll operation if appropriate. | | `abstract void` | `https://developer.android.com/reference/androidx/core/view/NestedScrollingParent#onStopNestedScroll(android.view.View)(@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/android/view/View.html target)` React to a nested scroll operation ending. | |
| From [android.view.View](https://developer.android.com/reference/android/view/View.html) |---|---| | `void` | `https://developer.android.com/reference/android/view/View.html#addOnAttachStateChangeListener(android.view.View.OnAttachStateChangeListener)( https://developer.android.com/reference/android/view/View.OnAttachStateChangeListener.html listener )` | | `void` | `https://developer.android.com/reference/android/view/View.html#addOnLayoutChangeListener(android.view.View.OnLayoutChangeListener)(https://developer.android.com/reference/android/view/View.OnLayoutChangeListener.html listener)` | | `void` | `https://developer.android.com/reference/android/view/View.html#addOnUnhandledKeyEventListener(android.view.View.OnUnhandledKeyEventListener)( https://developer.android.com/reference/android/view/View.OnUnhandledKeyEventListener.html listener )` | | `https://developer.android.com/reference/android/view/ViewPropertyAnimator.html` | `https://developer.android.com/reference/android/view/View.html#animate()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#announceForAccessibility(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence.html text)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/View.html#autofill(android.util.SparseArray&lt;android.view.autofill.AutofillValue&gt;)(https://developer.android.com/reference/android/util/SparseArray.html<https://developer.android.com/reference/android/view/autofill/AutofillValue.html> values)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#awakenScrollBars()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#bringToFront()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#buildDrawingCache()()` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/View.html#buildLayer()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#callOnClick()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#canResolveLayoutDirection()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#canResolveTextAlignment()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#canResolveTextDirection()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#canScrollHorizontally(int)(int direction)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#canScrollVertically(int)(int direction)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#cancelDragAndDrop()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#cancelLongPress()()` | | `final void` | `https://developer.android.com/reference/android/view/View.html#cancelPendingInputEvents()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#checkInputConnectionProxy(android.view.View)(https://developer.android.com/reference/android/view/View.html view)` | | `void` | `https://developer.android.com/reference/android/view/View.html#clearAnimation()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#clearPendingCredentialRequest()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#clearViewTranslationCallback()()` | | `static int` | `https://developer.android.com/reference/android/view/View.html#combineMeasuredStates(int, int)(int curState, int newState)` | | `int` | `https://developer.android.com/reference/android/view/View.html#computeHorizontalScrollExtent()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#computeHorizontalScrollOffset()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#computeHorizontalScrollRange()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#computeScroll()()` | | `https://developer.android.com/reference/android/view/WindowInsets.html` | `https://developer.android.com/reference/android/view/View.html#computeSystemWindowInsets(android.view.WindowInsets, android.graphics.Rect)(https://developer.android.com/reference/android/view/WindowInsets.html in, https://developer.android.com/reference/android/graphics/Rect.html outLocalInsets)` | | `int` | `https://developer.android.com/reference/android/view/View.html#computeVerticalScrollExtent()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#computeVerticalScrollOffset()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#computeVerticalScrollRange()()` | | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.html` | `https://developer.android.com/reference/android/view/View.html#createAccessibilityNodeInfo()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#createContextMenu(android.view.ContextMenu)(https://developer.android.com/reference/android/view/ContextMenu.html menu)` | | `void` | `https://developer.android.com/reference/android/view/View.html#destroyDrawingCache()()` **This method is deprecated.** | | `boolean` | `https://developer.android.com/reference/android/view/View.html#dispatchGenericMotionEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#dispatchNestedFling(float, float, boolean)(float velocityX, float velocityY, boolean consumed)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#dispatchNestedPreFling(float, float)(float velocityX, float velocityY)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#dispatchNestedPrePerformAccessibilityAction(int, android.os.Bundle)( int action, https://developer.android.com/reference/android/os/Bundle.html arguments )` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#dispatchNestedPreScroll(int, int, int[], int[])( int dx, int dy, int[] consumed, int[] offsetInWindow )` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#dispatchNestedScroll(int, int, int, int, int[])( int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed, int[] offsetInWindow )` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent)(https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/View.html#draw(android.graphics.Canvas)(https://developer.android.com/reference/android/graphics/Canvas.html canvas)` | | `void` | `https://developer.android.com/reference/android/view/View.html#drawableHotspotChanged(float, float)(float x, float y)` | | `final https://developer.android.com/reference/android/window/OnBackInvokedDispatcher.html` | `https://developer.android.com/reference/android/view/View.html#findOnBackInvokedDispatcher()()` | | `final T` | `<T extends https://developer.android.com/reference/android/view/View.html> https://developer.android.com/reference/android/view/View.html#findViewById(int)(int id)` | | `final T` | `<T extends https://developer.android.com/reference/android/view/View.html> https://developer.android.com/reference/android/view/View.html#findViewWithTag(java.lang.Object)(https://developer.android.com/reference/java/lang/Object.html tag)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#fitSystemWindows(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect.html insets)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/View.html#forceHasOverlappingRendering(boolean)(boolean hasOverlappingRendering)` | | `void` | `https://developer.android.com/reference/android/view/View.html#forceLayout()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#generateDisplayHash(java.lang.String, android.graphics.Rect, java.util.concurrent.Executor, android.view.displayhash.DisplayHashResultCallback)( https://developer.android.com/reference/java/lang/String.html hashAlgorithm, https://developer.android.com/reference/android/graphics/Rect.html bounds, https://developer.android.com/reference/java/util/concurrent/Executor.html executor, https://developer.android.com/reference/android/view/displayhash/DisplayHashResultCallback.html callback )` | | `static int` | `https://developer.android.com/reference/android/view/View.html#generateViewId()()` | | `https://developer.android.com/reference/android/view/View.AccessibilityDelegate.html` | `https://developer.android.com/reference/android/view/View.html#getAccessibilityDelegate()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getAccessibilityLiveRegion()()` | | `https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeProvider.html` | `https://developer.android.com/reference/android/view/View.html#getAccessibilityNodeProvider()()` | | `https://developer.android.com/reference/java/lang/CharSequence.html` | `https://developer.android.com/reference/android/view/View.html#getAccessibilityPaneTitle()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getAccessibilityTraversalAfter()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getAccessibilityTraversalBefore()()` | | `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#getAllowedHandwritingDelegatePackageName()()` | | `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#getAllowedHandwritingDelegatorPackageName()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getAlpha()()` | | `https://developer.android.com/reference/android/view/animation/Animation.html` | `https://developer.android.com/reference/android/view/View.html#getAnimation()()` | | `https://developer.android.com/reference/android/graphics/Matrix.html` | `https://developer.android.com/reference/android/view/View.html#getAnimationMatrix()()` | | `https://developer.android.com/reference/android/os/IBinder.html` | `https://developer.android.com/reference/android/view/View.html#getApplicationWindowToken()()` | | `int[]` | `https://developer.android.com/reference/android/view/View.html#getAttributeResolutionStack(int)(int attribute)` | | `https://developer.android.com/reference/java/util/Map.html<https://developer.android.com/reference/java/lang/Integer.html, https://developer.android.com/reference/java/lang/Integer.html>` | `https://developer.android.com/reference/android/view/View.html#getAttributeSourceResourceMap()()` | | `String[]` | `https://developer.android.com/reference/android/view/View.html#getAutofillHints()()` | | `final https://developer.android.com/reference/android/view/autofill/AutofillId.html` | `https://developer.android.com/reference/android/view/View.html#getAutofillId()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getAutofillType()()` | | `https://developer.android.com/reference/android/view/autofill/AutofillValue.html` | `https://developer.android.com/reference/android/view/View.html#getAutofillValue()()` | | `https://developer.android.com/reference/android/graphics/drawable/Drawable.html` | `https://developer.android.com/reference/android/view/View.html#getBackground()()` | | `https://developer.android.com/reference/android/graphics/BlendMode.html` | `https://developer.android.com/reference/android/view/View.html#getBackgroundTintBlendMode()()` | | `https://developer.android.com/reference/android/content/res/ColorStateList.html` | `https://developer.android.com/reference/android/view/View.html#getBackgroundTintList()()` | | `https://developer.android.com/reference/android/graphics/PorterDuff.Mode.html` | `https://developer.android.com/reference/android/view/View.html#getBackgroundTintMode()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getBaseline()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getBottom()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getBottomFadingEdgeStrength()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getBottomPaddingOffset()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getCameraDistance()()` | | `https://developer.android.com/reference/android/graphics/Rect.html` | `https://developer.android.com/reference/android/view/View.html#getClipBounds()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#getClipBounds(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect.html outRect)` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#getClipToOutline()()` | | `final https://developer.android.com/reference/android/view/contentcapture/ContentCaptureSession.html` | `https://developer.android.com/reference/android/view/View.html#getContentCaptureSession()()` | | `https://developer.android.com/reference/java/lang/CharSequence.html` | `https://developer.android.com/reference/android/view/View.html#getContentDescription()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getContentSensitivity()()` | | `final https://developer.android.com/reference/android/content/Context.html` | `https://developer.android.com/reference/android/view/View.html#getContext()()` | | `https://developer.android.com/reference/android/view/ContextMenu.ContextMenuInfo.html` | `https://developer.android.com/reference/android/view/View.html#getContextMenuInfo()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#getDefaultFocusHighlightEnabled()()` | | `static int` | `https://developer.android.com/reference/android/view/View.html#getDefaultSize(int, int)(int size, int measureSpec)` | | `https://developer.android.com/reference/android/view/Display.html` | `https://developer.android.com/reference/android/view/View.html#getDisplay()()` | | `final int[]` | `https://developer.android.com/reference/android/view/View.html#getDrawableState()()` | | `https://developer.android.com/reference/android/graphics/Bitmap.html` | `https://developer.android.com/reference/android/view/View.html#getDrawingCache()()` **This method is deprecated.** | | `int` | `https://developer.android.com/reference/android/view/View.html#getDrawingCacheBackgroundColor()()` **This method is deprecated.** | | `int` | `https://developer.android.com/reference/android/view/View.html#getDrawingCacheQuality()()` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/View.html#getDrawingRect(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect.html outRect)` | | `long` | `https://developer.android.com/reference/android/view/View.html#getDrawingTime()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getElevation()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getExplicitStyle()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#getFilterTouchesWhenObscured()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#getFitsSystemWindows()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getFocusable()()` | | `https://developer.android.com/reference/java/util/ArrayList.html<https://developer.android.com/reference/android/view/View.html>` | `https://developer.android.com/reference/android/view/View.html#getFocusables(int)(int direction)` | | `void` | `https://developer.android.com/reference/android/view/View.html#getFocusedRect(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect.html r)` | | `https://developer.android.com/reference/android/graphics/drawable/Drawable.html` | `https://developer.android.com/reference/android/view/View.html#getForeground()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getForegroundGravity()()` | | `https://developer.android.com/reference/android/graphics/BlendMode.html` | `https://developer.android.com/reference/android/view/View.html#getForegroundTintBlendMode()()` | | `https://developer.android.com/reference/android/content/res/ColorStateList.html` | `https://developer.android.com/reference/android/view/View.html#getForegroundTintList()()` | | `https://developer.android.com/reference/android/graphics/PorterDuff.Mode.html` | `https://developer.android.com/reference/android/view/View.html#getForegroundTintMode()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getFrameContentVelocity()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#getGlobalVisibleRect(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect.html r)` | | `https://developer.android.com/reference/android/os/Handler.html` | `https://developer.android.com/reference/android/view/View.html#getHandler()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getHandwritingBoundsOffsetBottom()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getHandwritingBoundsOffsetLeft()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getHandwritingBoundsOffsetRight()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getHandwritingBoundsOffsetTop()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getHandwritingDelegateFlags()()` | | `https://developer.android.com/reference/java/lang/Runnable.html` | `https://developer.android.com/reference/android/view/View.html#getHandwritingDelegatorCallback()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#getHasOverlappingRendering()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getHeight()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#getHitRect(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect.html outRect)` | | `int` | `https://developer.android.com/reference/android/view/View.html#getHorizontalFadingEdgeLength()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getHorizontalScrollbarHeight()()` | | `https://developer.android.com/reference/android/graphics/drawable/Drawable.html` | `https://developer.android.com/reference/android/view/View.html#getHorizontalScrollbarThumbDrawable()()` | | `https://developer.android.com/reference/android/graphics/drawable/Drawable.html` | `https://developer.android.com/reference/android/view/View.html#getHorizontalScrollbarTrackDrawable()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getId()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getImportantForAccessibility()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getImportantForAutofill()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getImportantForContentCapture()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#getKeepScreenOn()()` | | `https://developer.android.com/reference/android/view/KeyEvent.DispatcherState.html` | `https://developer.android.com/reference/android/view/View.html#getKeyDispatcherState()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getLabelFor()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getLayerType()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getLayoutDirection()()` | | `https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html` | `https://developer.android.com/reference/android/view/View.html#getLayoutParams()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getLeft()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getLeftFadingEdgeStrength()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getLeftPaddingOffset()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#getLocalVisibleRect(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect.html r)` | | `void` | `https://developer.android.com/reference/android/view/View.html#getLocationInSurface(int[])(int[] location)` | | `void` | `https://developer.android.com/reference/android/view/View.html#getLocationInWindow(int[])(int[] outLocation)` | | `void` | `https://developer.android.com/reference/android/view/View.html#getLocationOnScreen(int[])(int[] outLocation)` | | `https://developer.android.com/reference/android/graphics/Matrix.html` | `https://developer.android.com/reference/android/view/View.html#getMatrix()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getMeasuredHeight()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getMeasuredHeightAndState()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getMeasuredState()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getMeasuredWidth()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getMeasuredWidthAndState()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getMinimumHeight()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getMinimumWidth()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getNextClusterForwardId()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getNextFocusDownId()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getNextFocusForwardId()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getNextFocusLeftId()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getNextFocusRightId()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getNextFocusUpId()()` | | `https://developer.android.com/reference/android/view/View.OnFocusChangeListener.html` | `https://developer.android.com/reference/android/view/View.html#getOnFocusChangeListener()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getOutlineAmbientShadowColor()()` | | `https://developer.android.com/reference/android/view/ViewOutlineProvider.html` | `https://developer.android.com/reference/android/view/View.html#getOutlineProvider()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getOutlineSpotShadowColor()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getOverScrollMode()()` | | `https://developer.android.com/reference/android/view/ViewOverlay.html` | `https://developer.android.com/reference/android/view/View.html#getOverlay()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getPaddingBottom()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getPaddingEnd()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getPaddingLeft()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getPaddingRight()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getPaddingStart()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getPaddingTop()()` | | `final https://developer.android.com/reference/android/view/ViewParent.html` | `https://developer.android.com/reference/android/view/View.html#getParent()()` | | `https://developer.android.com/reference/android/view/ViewParent.html` | `https://developer.android.com/reference/android/view/View.html#getParentForAccessibility()()` | | `final https://developer.android.com/reference/android/os/OutcomeReceiver.html<https://developer.android.com/reference/android/credentials/GetCredentialResponse.html, https://developer.android.com/reference/android/credentials/GetCredentialException.html>` | `https://developer.android.com/reference/android/view/View.html#getPendingCredentialCallback()()` | | `final https://developer.android.com/reference/android/credentials/GetCredentialRequest.html` | `https://developer.android.com/reference/android/view/View.html#getPendingCredentialRequest()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getPivotX()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getPivotY()()` | | `https://developer.android.com/reference/android/view/PointerIcon.html` | `https://developer.android.com/reference/android/view/View.html#getPointerIcon()()` | | `final https://developer.android.com/reference/java/util/List.html<https://developer.android.com/reference/android/graphics/Rect.html>` | `https://developer.android.com/reference/android/view/View.html#getPreferKeepClearRects()()` | | `String[]` | `https://developer.android.com/reference/android/view/View.html#getReceiveContentMimeTypes()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getRequestedFrameRate()()` | | `https://developer.android.com/reference/android/content/res/Resources.html` | `https://developer.android.com/reference/android/view/View.html#getResources()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#getRevealOnFocusHint()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getRight()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getRightFadingEdgeStrength()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getRightPaddingOffset()()` | | `https://developer.android.com/reference/android/view/AttachedSurfaceControl.html` | `https://developer.android.com/reference/android/view/View.html#getRootSurfaceControl()()` | | `https://developer.android.com/reference/android/view/View.html` | `https://developer.android.com/reference/android/view/View.html#getRootView()()` | | `https://developer.android.com/reference/android/view/WindowInsets.html` | `https://developer.android.com/reference/android/view/View.html#getRootWindowInsets()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getRotation()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getRotationX()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getRotationY()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getScaleX()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getScaleY()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getScrollBarDefaultDelayBeforeFade()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getScrollBarFadeDuration()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getScrollBarSize()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getScrollBarStyle()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getScrollCaptureHint()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getScrollIndicators()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getScrollX()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getScrollY()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getSolidColor()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getSourceLayoutResId()()` | | `final https://developer.android.com/reference/java/lang/CharSequence.html` | `https://developer.android.com/reference/android/view/View.html#getStateDescription()()` | | `https://developer.android.com/reference/android/animation/StateListAnimator.html` | `https://developer.android.com/reference/android/view/View.html#getStateListAnimator()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getSuggestedMinimumHeight()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getSuggestedMinimumWidth()()` | | `https://developer.android.com/reference/java/lang/CharSequence.html` | `https://developer.android.com/reference/android/view/View.html#getSupplementalDescription()()` | | `https://developer.android.com/reference/java/util/List.html<https://developer.android.com/reference/android/graphics/Rect.html>` | `https://developer.android.com/reference/android/view/View.html#getSystemGestureExclusionRects()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getSystemUiVisibility()()` **This method is deprecated.** | | `https://developer.android.com/reference/java/lang/Object.html` | `https://developer.android.com/reference/android/view/View.html#getTag()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getTextAlignment()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getTextDirection()()` | | `https://developer.android.com/reference/java/lang/CharSequence.html` | `https://developer.android.com/reference/android/view/View.html#getTooltipText()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getTop()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getTopFadingEdgeStrength()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getTopPaddingOffset()()` | | `https://developer.android.com/reference/android/view/TouchDelegate.html` | `https://developer.android.com/reference/android/view/View.html#getTouchDelegate()()` | | `https://developer.android.com/reference/java/util/ArrayList.html<https://developer.android.com/reference/android/view/View.html>` | `https://developer.android.com/reference/android/view/View.html#getTouchables()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getTransitionAlpha()()` | | `https://developer.android.com/reference/java/lang/String.html` | `https://developer.android.com/reference/android/view/View.html#getTransitionName()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getTranslationX()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getTranslationY()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getTranslationZ()()` | | `long` | `https://developer.android.com/reference/android/view/View.html#getUniqueDrawingId()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getVerticalFadingEdgeLength()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getVerticalScrollbarPosition()()` | | `https://developer.android.com/reference/android/graphics/drawable/Drawable.html` | `https://developer.android.com/reference/android/view/View.html#getVerticalScrollbarThumbDrawable()()` | | `https://developer.android.com/reference/android/graphics/drawable/Drawable.html` | `https://developer.android.com/reference/android/view/View.html#getVerticalScrollbarTrackDrawable()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getVerticalScrollbarWidth()()` | | `https://developer.android.com/reference/android/view/translation/ViewTranslationResponse.html` | `https://developer.android.com/reference/android/view/View.html#getViewTranslationResponse()()` | | `https://developer.android.com/reference/android/view/ViewTreeObserver.html` | `https://developer.android.com/reference/android/view/View.html#getViewTreeObserver()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getVisibility()()` | | `final int` | `https://developer.android.com/reference/android/view/View.html#getWidth()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getWindowAttachCount()()` | | `https://developer.android.com/reference/android/view/WindowId.html` | `https://developer.android.com/reference/android/view/View.html#getWindowId()()` | | `https://developer.android.com/reference/android/view/WindowInsetsController.html` | `https://developer.android.com/reference/android/view/View.html#getWindowInsetsController()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getWindowSystemUiVisibility()()` **This method is deprecated.** | | `https://developer.android.com/reference/android/os/IBinder.html` | `https://developer.android.com/reference/android/view/View.html#getWindowToken()()` | | `int` | `https://developer.android.com/reference/android/view/View.html#getWindowVisibility()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#getWindowVisibleDisplayFrame(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect.html outRect)` | | `float` | `https://developer.android.com/reference/android/view/View.html#getX()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getY()()` | | `float` | `https://developer.android.com/reference/android/view/View.html#getZ()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#hasExplicitFocusable()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#hasFocusable()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#hasNestedScrollingParent()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#hasOnClickListeners()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#hasOnLongClickListeners()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#hasOverlappingRendering()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#hasPointerCapture()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#hasWindowFocus()()` | | `static https://developer.android.com/reference/android/view/View.html` | `https://developer.android.com/reference/android/view/View.html#inflate(android.content.Context, int, android.view.ViewGroup)(https://developer.android.com/reference/android/content/Context.html context, int resource, https://developer.android.com/reference/android/view/ViewGroup.html root)` | | `void` | `https://developer.android.com/reference/android/view/View.html#invalidate()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#invalidateDrawable(android.graphics.drawable.Drawable)(https://developer.android.com/reference/android/graphics/drawable/Drawable.html drawable)` | | `void` | `https://developer.android.com/reference/android/view/View.html#invalidateOutline()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isAccessibilityDataSensitive()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isAccessibilityFocused()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isAccessibilityHeading()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isActivated()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isAttachedToWindow()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isAutoHandwritingEnabled()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isClickable()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#isContentSensitive()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isContextClickable()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isCredential()()` **This method is deprecated.** | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isDirty()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isDrawingCacheEnabled()()` **This method is deprecated.** | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isDuplicateParentStateEnabled()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isEnabled()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#isFocusable()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#isFocusableInTouchMode()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isFocused()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#isFocusedByDefault()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isForceDarkAllowed()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isHandwritingDelegate()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isHapticFeedbackEnabled()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isHardwareAccelerated()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isHorizontalFadingEdgeEnabled()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isHorizontalScrollBarEnabled()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isHovered()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isImportantForAccessibility()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#isImportantForAutofill()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#isImportantForContentCapture()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isInEditMode()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isInLayout()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isInTouchMode()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#isKeyboardNavigationCluster()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isLaidOut()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isLayoutDirectionResolved()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isLayoutRequested()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isLongClickable()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isNestedScrollingEnabled()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isOpaque()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isPaddingOffsetRequired()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isPaddingRelative()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isPivotSet()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#isPreferKeepClear()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isPressed()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isSaveEnabled()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isSaveFromParentEnabled()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isScreenReaderFocusable()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isScrollContainer()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isScrollbarFadingEnabled()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isSelected()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#isShowingLayoutBounds()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isShown()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isSoundEffectsEnabled()()` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#isTemporarilyDetached()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isTextAlignmentResolved()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isTextDirectionResolved()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isVerticalFadingEdgeEnabled()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isVerticalScrollBarEnabled()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#isVisibleToUserForAutofill(int)(int virtualId)` | | `https://developer.android.com/reference/android/view/View.html` | `https://developer.android.com/reference/android/view/View.html#keyboardNavigationClusterSearch(android.view.View, int)(https://developer.android.com/reference/android/view/View.html currentCluster, int direction)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#measure(int, int)(int widthMeasureSpec, int heightMeasureSpec)` | | `static int[]` | `https://developer.android.com/reference/android/view/View.html#mergeDrawableStates(int[], int[])(int[] baseState, int[] additionalState)` | | `void` | `https://developer.android.com/reference/android/view/View.html#offsetLeftAndRight(int)(int offset)` | | `void` | `https://developer.android.com/reference/android/view/View.html#offsetTopAndBottom(int)(int offset)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onAnimationEnd()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#onAnimationStart()()` | | `https://developer.android.com/reference/android/view/WindowInsets.html` | `https://developer.android.com/reference/android/view/View.html#onApplyWindowInsets(android.view.WindowInsets)(https://developer.android.com/reference/android/view/WindowInsets.html insets)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onCancelPendingInputEvents()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onCapturedPointerEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onCheckIsTextEditor()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#onConfigurationChanged(android.content.res.Configuration)(https://developer.android.com/reference/android/content/res/Configuration.html newConfig)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onCreateContextMenu(android.view.ContextMenu)(https://developer.android.com/reference/android/view/ContextMenu.html menu)` | | `https://developer.android.com/reference/android/view/inputmethod/InputConnection.html` | `https://developer.android.com/reference/android/view/View.html#onCreateInputConnection(android.view.inputmethod.EditorInfo)(https://developer.android.com/reference/android/view/inputmethod/EditorInfo.html outAttrs)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onCreateViewTranslationRequest(int[], java.util.function.Consumer&lt;android.view.translation.ViewTranslationRequest&gt;)( int[] supportedFormats, https://developer.android.com/reference/java/util/function/Consumer.html<https://developer.android.com/reference/android/view/translation/ViewTranslationRequest.html> requestsCollector )` | | `void` | `https://developer.android.com/reference/android/view/View.html#onCreateVirtualViewTranslationRequests(long[], int[], java.util.function.Consumer&lt;android.view.translation.ViewTranslationRequest&gt;)( long[] virtualIds, int[] supportedFormats, https://developer.android.com/reference/java/util/function/Consumer.html<https://developer.android.com/reference/android/view/translation/ViewTranslationRequest.html> requestsCollector )` | | `void` | `https://developer.android.com/reference/android/view/View.html#onDisplayHint(int)(int hint)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onDragEvent(android.view.DragEvent)(https://developer.android.com/reference/android/view/DragEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onDraw(android.graphics.Canvas)(https://developer.android.com/reference/android/graphics/Canvas.html canvas)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onDrawForeground(android.graphics.Canvas)(https://developer.android.com/reference/android/graphics/Canvas.html canvas)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#onDrawScrollBars(android.graphics.Canvas)(https://developer.android.com/reference/android/graphics/Canvas.html canvas)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onFilterTouchEventForSecurity(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onFinishInflate()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#onFinishTemporaryDetach()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#onFocusChanged(boolean, int, android.graphics.Rect)( boolean gainFocus, int direction, https://developer.android.com/reference/android/graphics/Rect.html previouslyFocusedRect )` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onGenericMotionEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onHoverChanged(boolean)(boolean hovered)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onHoverEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onInitializeAccessibilityEvent(android.view.accessibility.AccessibilityEvent)(https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onInitializeAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo)(https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.html info)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onKeyDown(int, android.view.KeyEvent)(int keyCode, https://developer.android.com/reference/android/view/KeyEvent.html event)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onKeyLongPress(int, android.view.KeyEvent)(int keyCode, https://developer.android.com/reference/android/view/KeyEvent.html event)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onKeyMultiple(int, int, android.view.KeyEvent)(int keyCode, int repeatCount, https://developer.android.com/reference/android/view/KeyEvent.html event)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onKeyPreIme(int, android.view.KeyEvent)(int keyCode, https://developer.android.com/reference/android/view/KeyEvent.html event)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onKeyShortcut(int, android.view.KeyEvent)(int keyCode, https://developer.android.com/reference/android/view/KeyEvent.html event)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onKeyUp(int, android.view.KeyEvent)(int keyCode, https://developer.android.com/reference/android/view/KeyEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onMeasure(int, int)(int widthMeasureSpec, int heightMeasureSpec)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onOverScrolled(int, int, boolean, boolean)( int scrollX, int scrollY, boolean clampedX, boolean clampedY )` | | `void` | `https://developer.android.com/reference/android/view/View.html#onPointerCaptureChange(boolean)(boolean hasCapture)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent)(https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onProvideAutofillStructure(android.view.ViewStructure, int)(https://developer.android.com/reference/android/view/ViewStructure.html structure, int flags)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onProvideAutofillVirtualStructure(android.view.ViewStructure, int)(https://developer.android.com/reference/android/view/ViewStructure.html structure, int flags)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onProvideContentCaptureStructure(android.view.ViewStructure, int)(https://developer.android.com/reference/android/view/ViewStructure.html structure, int flags)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onProvideStructure(android.view.ViewStructure)(https://developer.android.com/reference/android/view/ViewStructure.html structure)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onProvideVirtualStructure(android.view.ViewStructure)(https://developer.android.com/reference/android/view/ViewStructure.html structure)` | | `https://developer.android.com/reference/android/view/ContentInfo.html` | `https://developer.android.com/reference/android/view/View.html#onReceiveContent(android.view.ContentInfo)(https://developer.android.com/reference/android/view/ContentInfo.html payload)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onRestoreInstanceState(android.os.Parcelable)(https://developer.android.com/reference/android/os/Parcelable.html state)` | | `https://developer.android.com/reference/android/os/Parcelable.html` | `https://developer.android.com/reference/android/view/View.html#onSaveInstanceState()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#onScreenStateChanged(int)(int screenState)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onScrollCaptureSearch(android.graphics.Rect, android.graphics.Point, java.util.function.Consumer&lt;android.view.ScrollCaptureTarget&gt;)( https://developer.android.com/reference/android/graphics/Rect.html localVisibleRect, https://developer.android.com/reference/android/graphics/Point.html windowOffset, https://developer.android.com/reference/java/util/function/Consumer.html<https://developer.android.com/reference/android/view/ScrollCaptureTarget.html> targets )` | | `void` | `https://developer.android.com/reference/android/view/View.html#onScrollChanged(int, int, int, int)(int l, int t, int oldl, int oldt)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onSetAlpha(int)(int alpha)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onSizeChanged(int, int, int, int)(int w, int h, int oldw, int oldh)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onStartTemporaryDetach()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#onTrackballEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onViewTranslationResponse(android.view.translation.ViewTranslationResponse)(https://developer.android.com/reference/android/view/translation/ViewTranslationResponse.html response)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onVirtualViewTranslationResponses(android.util.LongSparseArray&lt;android.view.translation.ViewTranslationResponse&gt;)( https://developer.android.com/reference/android/util/LongSparseArray.html<https://developer.android.com/reference/android/view/translation/ViewTranslationResponse.html> response )` | | `void` | `https://developer.android.com/reference/android/view/View.html#onVisibilityAggregated(boolean)(boolean isVisible)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onVisibilityChanged(android.view.View, int)(https://developer.android.com/reference/android/view/View.html changedView, int visibility)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onWindowFocusChanged(boolean)(boolean hasWindowFocus)` | | `void` | `https://developer.android.com/reference/android/view/View.html#onWindowSystemUiVisibilityChanged(int)(int visible)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/View.html#onWindowVisibilityChanged(int)(int visibility)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#overScrollBy(int, int, int, int, int, int, int, int, boolean)( int deltaX, int deltaY, int scrollX, int scrollY, int scrollRangeX, int scrollRangeY, int maxOverScrollX, int maxOverScrollY, boolean isTouchEvent )` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#performAccessibilityAction(int, android.os.Bundle)(int action, https://developer.android.com/reference/android/os/Bundle.html arguments)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#performClick()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#performContextClick()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#performHapticFeedback(android.os.vibrator.HapticFeedbackRequest)(https://developer.android.com/reference/android/os/vibrator/HapticFeedbackRequest.html request)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#performLongClick()()` | | `https://developer.android.com/reference/android/view/ContentInfo.html` | `https://developer.android.com/reference/android/view/View.html#performReceiveContent(android.view.ContentInfo)(https://developer.android.com/reference/android/view/ContentInfo.html payload)` | | `void` | `https://developer.android.com/reference/android/view/View.html#playSoundEffect(int)(int soundConstant)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#post(java.lang.Runnable)(https://developer.android.com/reference/java/lang/Runnable.html action)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#postDelayed(java.lang.Runnable, long)(https://developer.android.com/reference/java/lang/Runnable.html action, long delayMillis)` | | `void` | `https://developer.android.com/reference/android/view/View.html#postInvalidate()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#postInvalidateDelayed(long)(long delayMilliseconds)` | | `void` | `https://developer.android.com/reference/android/view/View.html#postInvalidateOnAnimation()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#postOnAnimation(java.lang.Runnable)(https://developer.android.com/reference/java/lang/Runnable.html action)` | | `void` | `https://developer.android.com/reference/android/view/View.html#postOnAnimationDelayed(java.lang.Runnable, long)(https://developer.android.com/reference/java/lang/Runnable.html action, long delayMillis)` | | `void` | `https://developer.android.com/reference/android/view/View.html#refreshDrawableState()()` | | `static void` | `https://developer.android.com/reference/android/view/View.html#registerCalledFromWrongThreadListener(android.view.View.CalledFromWrongThreadListener)( https://developer.android.com/reference/android/view/View.CalledFromWrongThreadListener.html listener )` | | `void` | `https://developer.android.com/reference/android/view/View.html#releasePointerCapture()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#removeCallbacks(java.lang.Runnable)(https://developer.android.com/reference/java/lang/Runnable.html action)` | | `void` | `https://developer.android.com/reference/android/view/View.html#removeOnAttachStateChangeListener(android.view.View.OnAttachStateChangeListener)( https://developer.android.com/reference/android/view/View.OnAttachStateChangeListener.html listener )` | | `void` | `https://developer.android.com/reference/android/view/View.html#removeOnLayoutChangeListener(android.view.View.OnLayoutChangeListener)(https://developer.android.com/reference/android/view/View.OnLayoutChangeListener.html listener)` | | `void` | `https://developer.android.com/reference/android/view/View.html#removeOnUnhandledKeyEventListener(android.view.View.OnUnhandledKeyEventListener)( https://developer.android.com/reference/android/view/View.OnUnhandledKeyEventListener.html listener )` | | `void` | `https://developer.android.com/reference/android/view/View.html#reportAppJankStats(android.app.jank.AppJankStats)(https://developer.android.com/reference/android/app/jank/AppJankStats.html appJankStats)` | | `void` | `https://developer.android.com/reference/android/view/View.html#requestApplyInsets()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#requestFitSystemWindows()()` **This method is deprecated.** | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#requestFocusFromTouch()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#requestLayout()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#requestPointerCapture()()` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#requestRectangleOnScreen(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect.html rectangle)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#requestUnbufferedDispatch(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` | | `final T` | `<T extends https://developer.android.com/reference/android/view/View.html> https://developer.android.com/reference/android/view/View.html#requireViewById(int)(int id)` | | `void` | `https://developer.android.com/reference/android/view/View.html#resetPivot()()` | | `static int` | `https://developer.android.com/reference/android/view/View.html#resolveSize(int, int)(int size, int measureSpec)` | | `static int` | `https://developer.android.com/reference/android/view/View.html#resolveSizeAndState(int, int, int)(int size, int measureSpec, int childMeasuredState)` | | `void` | `https://developer.android.com/reference/android/view/View.html#restoreHierarchyState(android.util.SparseArray&lt;android.os.Parcelable&gt;)(https://developer.android.com/reference/android/util/SparseArray.html<https://developer.android.com/reference/android/os/Parcelable.html> container)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#saveAttributeDataForStyleable(android.content.Context, int[], android.util.AttributeSet, android.content.res.TypedArray, int, int)( https://developer.android.com/reference/android/content/Context.html context, int[] styleable, https://developer.android.com/reference/android/util/AttributeSet.html attrs, https://developer.android.com/reference/android/content/res/TypedArray.html t, int defStyleAttr, int defStyleRes )` | | `void` | `https://developer.android.com/reference/android/view/View.html#saveHierarchyState(android.util.SparseArray&lt;android.os.Parcelable&gt;)(https://developer.android.com/reference/android/util/SparseArray.html<https://developer.android.com/reference/android/os/Parcelable.html> container)` | | `void` | `https://developer.android.com/reference/android/view/View.html#scheduleDrawable(android.graphics.drawable.Drawable, java.lang.Runnable, long)(https://developer.android.com/reference/android/graphics/drawable/Drawable.html who, https://developer.android.com/reference/java/lang/Runnable.html what, long when)` | | `void` | `https://developer.android.com/reference/android/view/View.html#scrollBy(int, int)(int x, int y)` | | `void` | `https://developer.android.com/reference/android/view/View.html#scrollTo(int, int)(int x, int y)` | | `void` | `https://developer.android.com/reference/android/view/View.html#sendAccessibilityEvent(int)(int eventType)` | | `void` | `https://developer.android.com/reference/android/view/View.html#sendAccessibilityEventUnchecked(android.view.accessibility.AccessibilityEvent)(https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAccessibilityDataSensitive(int)(int accessibilityDataSensitive)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAccessibilityDelegate(android.view.View.AccessibilityDelegate)(https://developer.android.com/reference/android/view/View.AccessibilityDelegate.html delegate)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAccessibilityHeading(boolean)(boolean isHeading)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAccessibilityLiveRegion(int)(int mode)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAccessibilityPaneTitle(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence.html accessibilityPaneTitle)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAccessibilityTraversalAfter(int)(int afterId)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAccessibilityTraversalBefore(int)(int beforeId)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setActivated(boolean)(boolean activated)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAllowClickWhenDisabled(boolean)(boolean clickableWhenDisabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAllowedHandwritingDelegatePackage(java.lang.String)(https://developer.android.com/reference/java/lang/String.html allowedPackageName)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAllowedHandwritingDelegatorPackage(java.lang.String)(https://developer.android.com/reference/java/lang/String.html allowedPackageName)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAlpha(float)(float alpha)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAnimation(android.view.animation.Animation)(https://developer.android.com/reference/android/view/animation/Animation.html animation)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAnimationMatrix(android.graphics.Matrix)(https://developer.android.com/reference/android/graphics/Matrix.html matrix)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAutoHandwritingEnabled(boolean)(boolean enabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAutofillHints(java.lang.String...)(String[] autofillHints)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setAutofillId(android.view.autofill.AutofillId)(https://developer.android.com/reference/android/view/autofill/AutofillId.html id)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setBackground(android.graphics.drawable.Drawable)(https://developer.android.com/reference/android/graphics/drawable/Drawable.html background)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setBackgroundColor(int)(int color)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setBackgroundDrawable(android.graphics.drawable.Drawable)(https://developer.android.com/reference/android/graphics/drawable/Drawable.html background)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/View.html#setBackgroundResource(int)(int resid)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setBackgroundTintBlendMode(android.graphics.BlendMode)(https://developer.android.com/reference/android/graphics/BlendMode.html blendMode)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setBackgroundTintList(android.content.res.ColorStateList)(https://developer.android.com/reference/android/content/res/ColorStateList.html tint)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setBackgroundTintMode(android.graphics.PorterDuff.Mode)(https://developer.android.com/reference/android/graphics/PorterDuff.Mode.html tintMode)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#setBottom(int)(int bottom)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setCameraDistance(float)(float distance)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setClickable(boolean)(boolean clickable)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setClipBounds(android.graphics.Rect)(https://developer.android.com/reference/android/graphics/Rect.html clipBounds)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setClipToOutline(boolean)(boolean clipToOutline)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setContentCaptureSession(android.view.contentcapture.ContentCaptureSession)(https://developer.android.com/reference/android/view/contentcapture/ContentCaptureSession.html contentCaptureSession)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setContentDescription(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence.html contentDescription)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#setContentSensitivity(int)(int mode)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setContextClickable(boolean)(boolean contextClickable)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setDefaultFocusHighlightEnabled(boolean)(boolean defaultFocusHighlightEnabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setDrawingCacheBackgroundColor(int)(int color)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/View.html#setDrawingCacheEnabled(boolean)(boolean enabled)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/View.html#setDrawingCacheQuality(int)(int quality)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/View.html#setDuplicateParentStateEnabled(boolean)(boolean enabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setElevation(float)(float elevation)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setEnabled(boolean)(boolean enabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setFadingEdgeLength(int)(int length)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setFilterTouchesWhenObscured(boolean)(boolean enabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setFitsSystemWindows(boolean)(boolean fitSystemWindows)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setFocusable(boolean)(boolean focusable)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setFocusableInTouchMode(boolean)(boolean focusableInTouchMode)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setFocusedByDefault(boolean)(boolean isFocusedByDefault)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setForceDarkAllowed(boolean)(boolean allow)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setForeground(android.graphics.drawable.Drawable)(https://developer.android.com/reference/android/graphics/drawable/Drawable.html foreground)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setForegroundGravity(int)(int gravity)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setForegroundTintBlendMode(android.graphics.BlendMode)(https://developer.android.com/reference/android/graphics/BlendMode.html blendMode)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setForegroundTintList(android.content.res.ColorStateList)(https://developer.android.com/reference/android/content/res/ColorStateList.html tint)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setForegroundTintMode(android.graphics.PorterDuff.Mode)(https://developer.android.com/reference/android/graphics/PorterDuff.Mode.html tintMode)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setFrameContentVelocity(float)(float pixelsPerSecond)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setHandwritingBoundsOffsets(float, float, float, float)( float offsetLeft, float offsetTop, float offsetRight, float offsetBottom )` | | `void` | `https://developer.android.com/reference/android/view/View.html#setHandwritingDelegateFlags(int)(int flags)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setHandwritingDelegatorCallback(java.lang.Runnable)(https://developer.android.com/reference/java/lang/Runnable.html callback)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setHapticFeedbackEnabled(boolean)(boolean hapticFeedbackEnabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setHasTransientState(boolean)(boolean hasTransientState)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setHorizontalFadingEdgeEnabled(boolean)(boolean horizontalFadingEdgeEnabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setHorizontalScrollBarEnabled(boolean)(boolean horizontalScrollBarEnabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setHorizontalScrollbarThumbDrawable(android.graphics.drawable.Drawable)(https://developer.android.com/reference/android/graphics/drawable/Drawable.html drawable)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setHorizontalScrollbarTrackDrawable(android.graphics.drawable.Drawable)(https://developer.android.com/reference/android/graphics/drawable/Drawable.html drawable)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setHovered(boolean)(boolean hovered)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setId(int)(int id)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setImportantForAccessibility(int)(int mode)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setImportantForAutofill(int)(int mode)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setImportantForContentCapture(int)(int mode)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setIsCredential(boolean)(boolean isCredential)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/View.html#setIsHandwritingDelegate(boolean)(boolean isHandwritingDelegate)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setKeepScreenOn(boolean)(boolean keepScreenOn)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setKeyboardNavigationCluster(boolean)(boolean isCluster)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setLabelFor(int)(int id)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setLayerPaint(android.graphics.Paint)(https://developer.android.com/reference/android/graphics/Paint.html paint)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setLayerType(int, android.graphics.Paint)(int layerType, https://developer.android.com/reference/android/graphics/Paint.html paint)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setLayoutDirection(int)(int layoutDirection)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setLayoutParams(android.view.ViewGroup.LayoutParams)(https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html params)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#setLeft(int)(int left)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#setLeftTopRightBottom(int, int, int, int)(int left, int top, int right, int bottom)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setLongClickable(boolean)(boolean longClickable)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#setMeasuredDimension(int, int)(int measuredWidth, int measuredHeight)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setMinimumHeight(int)(int minHeight)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setMinimumWidth(int)(int minWidth)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setNestedScrollingEnabled(boolean)(boolean enabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setNextClusterForwardId(int)(int nextClusterForwardId)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setNextFocusDownId(int)(int nextFocusDownId)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setNextFocusForwardId(int)(int nextFocusForwardId)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setNextFocusLeftId(int)(int nextFocusLeftId)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setNextFocusRightId(int)(int nextFocusRightId)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setNextFocusUpId(int)(int nextFocusUpId)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnApplyWindowInsetsListener(android.view.View.OnApplyWindowInsetsListener)( https://developer.android.com/reference/android/view/View.OnApplyWindowInsetsListener.html listener )` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnCapturedPointerListener(android.view.View.OnCapturedPointerListener)(https://developer.android.com/reference/android/view/View.OnCapturedPointerListener.html l)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnClickListener(android.view.View.OnClickListener)(https://developer.android.com/reference/android/view/View.OnClickListener.html l)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnContextClickListener(android.view.View.OnContextClickListener)(https://developer.android.com/reference/android/view/View.OnContextClickListener.html l)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnCreateContextMenuListener(android.view.View.OnCreateContextMenuListener)(https://developer.android.com/reference/android/view/View.OnCreateContextMenuListener.html l)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnDragListener(android.view.View.OnDragListener)(https://developer.android.com/reference/android/view/View.OnDragListener.html l)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnFocusChangeListener(android.view.View.OnFocusChangeListener)(https://developer.android.com/reference/android/view/View.OnFocusChangeListener.html l)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnGenericMotionListener(android.view.View.OnGenericMotionListener)(https://developer.android.com/reference/android/view/View.OnGenericMotionListener.html l)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnHoverListener(android.view.View.OnHoverListener)(https://developer.android.com/reference/android/view/View.OnHoverListener.html l)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnKeyListener(android.view.View.OnKeyListener)(https://developer.android.com/reference/android/view/View.OnKeyListener.html l)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnLongClickListener(android.view.View.OnLongClickListener)(https://developer.android.com/reference/android/view/View.OnLongClickListener.html l)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnReceiveContentListener(java.lang.String[], android.view.OnReceiveContentListener)( String[] mimeTypes, https://developer.android.com/reference/android/view/OnReceiveContentListener.html listener )` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnScrollChangeListener(android.view.View.OnScrollChangeListener)(https://developer.android.com/reference/android/view/View.OnScrollChangeListener.html l)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnSystemUiVisibilityChangeListener(android.view.View.OnSystemUiVisibilityChangeListener)( https://developer.android.com/reference/android/view/View.OnSystemUiVisibilityChangeListener.html l )` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/View.html#setOnTouchListener(android.view.View.OnTouchListener)(https://developer.android.com/reference/android/view/View.OnTouchListener.html l)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOutlineAmbientShadowColor(int)(int color)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOutlineProvider(android.view.ViewOutlineProvider)(https://developer.android.com/reference/android/view/ViewOutlineProvider.html provider)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOutlineSpotShadowColor(int)(int color)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setOverScrollMode(int)(int overScrollMode)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setPadding(int, int, int, int)(int left, int top, int right, int bottom)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setPaddingRelative(int, int, int, int)(int start, int top, int end, int bottom)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setPendingCredentialRequest(android.credentials.GetCredentialRequest, android.os.OutcomeReceiver&lt;android.credentials.GetCredentialResponse,android.credentials.GetCredentialException&gt;)( https://developer.android.com/reference/android/credentials/GetCredentialRequest.html request, https://developer.android.com/reference/android/os/OutcomeReceiver.html<https://developer.android.com/reference/android/credentials/GetCredentialResponse.html, https://developer.android.com/reference/android/credentials/GetCredentialException.html> callback )` | | `void` | `https://developer.android.com/reference/android/view/View.html#setPivotX(float)(float pivotX)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setPivotY(float)(float pivotY)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setPointerIcon(android.view.PointerIcon)(https://developer.android.com/reference/android/view/PointerIcon.html pointerIcon)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#setPreferKeepClear(boolean)(boolean preferKeepClear)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#setPreferKeepClearRects(java.util.List&lt;android.graphics.Rect&gt;)(https://developer.android.com/reference/java/util/List.html<https://developer.android.com/reference/android/graphics/Rect.html> rects)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setPressed(boolean)(boolean pressed)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setRenderEffect(android.graphics.RenderEffect)(https://developer.android.com/reference/android/graphics/RenderEffect.html renderEffect)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#setRevealOnFocusHint(boolean)(boolean revealOnFocus)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#setRight(int)(int right)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setRotation(float)(float rotation)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setRotationX(float)(float rotationX)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setRotationY(float)(float rotationY)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setSaveEnabled(boolean)(boolean enabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setSaveFromParentEnabled(boolean)(boolean enabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setScaleX(float)(float scaleX)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setScaleY(float)(float scaleY)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setScreenReaderFocusable(boolean)(boolean screenReaderFocusable)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setScrollBarDefaultDelayBeforeFade(int)( int scrollBarDefaultDelayBeforeFade )` | | `void` | `https://developer.android.com/reference/android/view/View.html#setScrollBarFadeDuration(int)(int scrollBarFadeDuration)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setScrollBarSize(int)(int scrollBarSize)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setScrollBarStyle(int)(int style)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#setScrollCaptureCallback(android.view.ScrollCaptureCallback)(https://developer.android.com/reference/android/view/ScrollCaptureCallback.html callback)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setScrollCaptureHint(int)(int hint)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setScrollContainer(boolean)(boolean isScrollContainer)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setScrollIndicators(int)(int indicators)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setScrollX(int)(int value)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setScrollY(int)(int value)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setScrollbarFadingEnabled(boolean)(boolean fadeScrollbars)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setSelected(boolean)(boolean selected)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setSoundEffectsEnabled(boolean)(boolean soundEffectsEnabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setStateDescription(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence.html stateDescription)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setStateListAnimator(android.animation.StateListAnimator)(https://developer.android.com/reference/android/animation/StateListAnimator.html stateListAnimator)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setSupplementalDescription(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence.html supplementalDescription)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setSystemGestureExclusionRects(java.util.List&lt;android.graphics.Rect&gt;)(https://developer.android.com/reference/java/util/List.html<https://developer.android.com/reference/android/graphics/Rect.html> rects)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setSystemUiVisibility(int)(int visibility)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/View.html#setTag(int, java.lang.Object)(int key, https://developer.android.com/reference/java/lang/Object.html tag)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setTextAlignment(int)(int textAlignment)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setTextDirection(int)(int textDirection)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setTooltipText(java.lang.CharSequence)(https://developer.android.com/reference/java/lang/CharSequence.html tooltipText)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#setTop(int)(int top)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setTouchDelegate(android.view.TouchDelegate)(https://developer.android.com/reference/android/view/TouchDelegate.html delegate)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setTransitionAlpha(float)(float alpha)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#setTransitionName(java.lang.String)(https://developer.android.com/reference/java/lang/String.html transitionName)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setTransitionVisibility(int)(int visibility)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setTranslationX(float)(float translationX)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setTranslationY(float)(float translationY)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setTranslationZ(float)(float translationZ)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setVerticalFadingEdgeEnabled(boolean)(boolean verticalFadingEdgeEnabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setVerticalScrollBarEnabled(boolean)(boolean verticalScrollBarEnabled)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setVerticalScrollbarPosition(int)(int position)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setVerticalScrollbarThumbDrawable(android.graphics.drawable.Drawable)(https://developer.android.com/reference/android/graphics/drawable/Drawable.html drawable)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setVerticalScrollbarTrackDrawable(android.graphics.drawable.Drawable)(https://developer.android.com/reference/android/graphics/drawable/Drawable.html drawable)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setViewTranslationCallback(android.view.translation.ViewTranslationCallback)(https://developer.android.com/reference/android/view/translation/ViewTranslationCallback.html callback)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setVisibility(int)(int visibility)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setWillNotCacheDrawing(boolean)(boolean willNotCacheDrawing)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/View.html#setWillNotDraw(boolean)(boolean willNotDraw)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setX(float)(float x)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setY(float)(float y)` | | `void` | `https://developer.android.com/reference/android/view/View.html#setZ(float)(float z)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#showContextMenu()()` | | `https://developer.android.com/reference/android/view/ActionMode.html` | `https://developer.android.com/reference/android/view/View.html#startActionMode(android.view.ActionMode.Callback)(https://developer.android.com/reference/android/view/ActionMode.Callback.html callback)` | | `void` | `https://developer.android.com/reference/android/view/View.html#startAnimation(android.view.animation.Animation)(https://developer.android.com/reference/android/view/animation/Animation.html animation)` | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#startDrag(android.content.ClipData, android.view.View.DragShadowBuilder, java.lang.Object, int)( https://developer.android.com/reference/android/content/ClipData.html data, https://developer.android.com/reference/android/view/View.DragShadowBuilder.html shadowBuilder, https://developer.android.com/reference/java/lang/Object.html myLocalState, int flags )` **This method is deprecated.** | | `final boolean` | `https://developer.android.com/reference/android/view/View.html#startDragAndDrop(android.content.ClipData, android.view.View.DragShadowBuilder, java.lang.Object, int)( https://developer.android.com/reference/android/content/ClipData.html data, https://developer.android.com/reference/android/view/View.DragShadowBuilder.html shadowBuilder, https://developer.android.com/reference/java/lang/Object.html myLocalState, int flags )` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#startNestedScroll(int)(int axes)` | | `void` | `https://developer.android.com/reference/android/view/View.html#stopNestedScroll()()` | | `void` | `https://developer.android.com/reference/android/view/View.html#transformMatrixToGlobal(android.graphics.Matrix)(https://developer.android.com/reference/android/graphics/Matrix.html matrix)` | | `void` | `https://developer.android.com/reference/android/view/View.html#transformMatrixToLocal(android.graphics.Matrix)(https://developer.android.com/reference/android/graphics/Matrix.html matrix)` | | `static void` | `https://developer.android.com/reference/android/view/View.html#unregisterCalledFromWrongThreadListener(android.view.View.CalledFromWrongThreadListener)( https://developer.android.com/reference/android/view/View.CalledFromWrongThreadListener.html listener )` | | `void` | `https://developer.android.com/reference/android/view/View.html#unscheduleDrawable(android.graphics.drawable.Drawable)(https://developer.android.com/reference/android/graphics/drawable/Drawable.html who)` | | `final void` | `https://developer.android.com/reference/android/view/View.html#updateDragShadow(android.view.View.DragShadowBuilder)(https://developer.android.com/reference/android/view/View.DragShadowBuilder.html shadowBuilder)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#verifyDrawable(android.graphics.drawable.Drawable)(https://developer.android.com/reference/android/graphics/drawable/Drawable.html who)` | | `boolean` | `https://developer.android.com/reference/android/view/View.html#willNotCacheDrawing()()` **This method is deprecated.** | | `boolean` | `https://developer.android.com/reference/android/view/View.html#willNotDraw()()` | |
| From [android.view.ViewGroup](https://developer.android.com/reference/android/view/ViewGroup.html) |---|---| | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#addChildrenForAccessibility(java.util.ArrayList&lt;android.view.View&gt;)(https://developer.android.com/reference/java/util/ArrayList.html<https://developer.android.com/reference/android/view/View.html> outChildren)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#addExtraDataToAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo, java.lang.String, android.os.Bundle)( https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.html info, https://developer.android.com/reference/java/lang/String.html extraDataKey, https://developer.android.com/reference/android/os/Bundle.html arguments )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#addFocusables(java.util.ArrayList&lt;android.view.View&gt;, int, int)(https://developer.android.com/reference/java/util/ArrayList.html<https://developer.android.com/reference/android/view/View.html> views, int direction, int focusableMode)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#addKeyboardNavigationClusters(java.util.Collection&lt;android.view.View&gt;, int)(https://developer.android.com/reference/java/util/Collection.html<https://developer.android.com/reference/android/view/View.html> views, int direction)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#addStatesFromChildren()()` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#addTouchables(java.util.ArrayList&lt;android.view.View&gt;)(https://developer.android.com/reference/java/util/ArrayList.html<https://developer.android.com/reference/android/view/View.html> views)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#addView(android.view.View)(https://developer.android.com/reference/android/view/View.html child)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#addViewInLayout(android.view.View, int, android.view.ViewGroup.LayoutParams)(https://developer.android.com/reference/android/view/View.html child, int index, https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html params)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#attachLayoutAnimationParameters(android.view.View, android.view.ViewGroup.LayoutParams, int, int)( https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html params, int index, int count )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#attachViewToParent(android.view.View, int, android.view.ViewGroup.LayoutParams)(https://developer.android.com/reference/android/view/View.html child, int index, https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html params)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#bringChildToFront(android.view.View)(https://developer.android.com/reference/android/view/View.html child)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#canAnimate()()` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#checkLayoutParams(android.view.ViewGroup.LayoutParams)(https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html p)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#childDrawableStateChanged(android.view.View)(https://developer.android.com/reference/android/view/View.html child)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#childHasTransientStateChanged(android.view.View, boolean)( https://developer.android.com/reference/android/view/View.html child, boolean childHasTransientState )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#cleanupLayoutState(android.view.View)(https://developer.android.com/reference/android/view/View.html child)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#clearChildFocus(android.view.View)(https://developer.android.com/reference/android/view/View.html child)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#clearDisappearingChildren()()` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#clearFocus()()` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#debug(int)(int depth)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#detachAllViewsFromParent()()` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#detachViewFromParent(android.view.View)(https://developer.android.com/reference/android/view/View.html child)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#detachViewsFromParent(int, int)(int start, int count)` | | `https://developer.android.com/reference/android/view/WindowInsets.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchApplyWindowInsets(android.view.WindowInsets)(https://developer.android.com/reference/android/view/WindowInsets.html insets)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchCapturedPointerEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchConfigurationChanged(android.content.res.Configuration)(https://developer.android.com/reference/android/content/res/Configuration.html newConfig)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchCreateViewTranslationRequest(java.util.Map&lt;android.view.autofill.AutofillId,long[]&gt;, int[], android.view.translation.TranslationCapability, java.util.List&lt;android.view.translation.ViewTranslationRequest&gt;)( https://developer.android.com/reference/java/util/Map.html<https://developer.android.com/reference/android/view/autofill/AutofillId.html, long[]> viewIds, int[] supportedFormats, https://developer.android.com/reference/android/view/translation/TranslationCapability.html capability, https://developer.android.com/reference/java/util/List.html<https://developer.android.com/reference/android/view/translation/ViewTranslationRequest.html> requests )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchDisplayHint(int)(int hint)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchDragEvent(android.view.DragEvent)(https://developer.android.com/reference/android/view/DragEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchDraw(android.graphics.Canvas)(https://developer.android.com/reference/android/graphics/Canvas.html canvas)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchDrawableHotspotChanged(float, float)(float x, float y)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchFinishTemporaryDetach()()` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchFreezeSelfOnly(android.util.SparseArray&lt;android.os.Parcelable&gt;)(https://developer.android.com/reference/android/util/SparseArray.html<https://developer.android.com/reference/android/os/Parcelable.html> container)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchGenericFocusedEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchGenericPointerEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchHoverEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchKeyEvent(android.view.KeyEvent)(https://developer.android.com/reference/android/view/KeyEvent.html event)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchKeyEventPreIme(android.view.KeyEvent)(https://developer.android.com/reference/android/view/KeyEvent.html event)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchKeyShortcutEvent(android.view.KeyEvent)(https://developer.android.com/reference/android/view/KeyEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchPointerCaptureChanged(boolean)(boolean hasCapture)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchProvideAutofillStructure(android.view.ViewStructure, int)(https://developer.android.com/reference/android/view/ViewStructure.html structure, int flags)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchProvideStructure(android.view.ViewStructure)(https://developer.android.com/reference/android/view/ViewStructure.html structure)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchRestoreInstanceState(android.util.SparseArray&lt;android.os.Parcelable&gt;)(https://developer.android.com/reference/android/util/SparseArray.html<https://developer.android.com/reference/android/os/Parcelable.html> container)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchSaveInstanceState(android.util.SparseArray&lt;android.os.Parcelable&gt;)(https://developer.android.com/reference/android/util/SparseArray.html<https://developer.android.com/reference/android/os/Parcelable.html> container)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchScrollCaptureSearch(android.graphics.Rect, android.graphics.Point, java.util.function.Consumer&lt;android.view.ScrollCaptureTarget&gt;)( https://developer.android.com/reference/android/graphics/Rect.html localVisibleRect, https://developer.android.com/reference/android/graphics/Point.html windowOffset, https://developer.android.com/reference/java/util/function/Consumer.html<https://developer.android.com/reference/android/view/ScrollCaptureTarget.html> targets )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchSetActivated(boolean)(boolean activated)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchSetPressed(boolean)(boolean pressed)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchSetSelected(boolean)(boolean selected)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchStartTemporaryDetach()()` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchSystemUiVisibilityChanged(int)(int visible)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchThawSelfOnly(android.util.SparseArray&lt;android.os.Parcelable&gt;)(https://developer.android.com/reference/android/util/SparseArray.html<https://developer.android.com/reference/android/os/Parcelable.html> container)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchTouchEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html ev)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchTrackballEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchUnhandledMove(android.view.View, int)(https://developer.android.com/reference/android/view/View.html focused, int direction)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchVisibilityChanged(android.view.View, int)(https://developer.android.com/reference/android/view/View.html changedView, int visibility)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchWindowFocusChanged(boolean)(boolean hasFocus)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchWindowInsetsAnimationEnd(android.view.WindowInsetsAnimation)(https://developer.android.com/reference/android/view/WindowInsetsAnimation.html animation)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchWindowInsetsAnimationPrepare(android.view.WindowInsetsAnimation)(https://developer.android.com/reference/android/view/WindowInsetsAnimation.html animation)` | | `https://developer.android.com/reference/android/view/WindowInsets.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchWindowInsetsAnimationProgress(android.view.WindowInsets, java.util.List&lt;android.view.WindowInsetsAnimation&gt;)( https://developer.android.com/reference/android/view/WindowInsets.html insets, https://developer.android.com/reference/java/util/List.html<https://developer.android.com/reference/android/view/WindowInsetsAnimation.html> runningAnimations )` | | `https://developer.android.com/reference/android/view/WindowInsetsAnimation.Bounds.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchWindowInsetsAnimationStart(android.view.WindowInsetsAnimation, android.view.WindowInsetsAnimation.Bounds)( https://developer.android.com/reference/android/view/WindowInsetsAnimation.html animation, https://developer.android.com/reference/android/view/WindowInsetsAnimation.Bounds.html bounds )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchWindowSystemUiVisiblityChanged(int)(int visible)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchWindowVisibilityChanged(int)(int visibility)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#drawChild(android.graphics.Canvas, android.view.View, long)(https://developer.android.com/reference/android/graphics/Canvas.html canvas, https://developer.android.com/reference/android/view/View.html child, long drawingTime)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#drawableStateChanged()()` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#endViewTransition(android.view.View)(https://developer.android.com/reference/android/view/View.html view)` | | `https://developer.android.com/reference/android/view/View.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#findFocus()()` | | `https://developer.android.com/reference/android/window/OnBackInvokedDispatcher.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#findOnBackInvokedDispatcherForChild(android.view.View, android.view.View)(https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/android/view/View.html requester)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#findViewsWithText(java.util.ArrayList&lt;android.view.View&gt;, java.lang.CharSequence, int)( https://developer.android.com/reference/java/util/ArrayList.html<https://developer.android.com/reference/android/view/View.html> outViews, https://developer.android.com/reference/java/lang/CharSequence.html text, int flags )` | | `https://developer.android.com/reference/android/view/View.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#focusSearch(android.view.View, int)(https://developer.android.com/reference/android/view/View.html focused, int direction)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#focusableViewAvailable(android.view.View)(https://developer.android.com/reference/android/view/View.html v)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#gatherTransparentRegion(android.graphics.Region)(https://developer.android.com/reference/android/graphics/Region.html region)` | | `https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#generateDefaultLayoutParams()()` | | `https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#generateLayoutParams(android.util.AttributeSet)(https://developer.android.com/reference/android/util/AttributeSet.html attrs)` | | `https://developer.android.com/reference/java/lang/CharSequence.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#getAccessibilityClassName()()` | | `https://developer.android.com/reference/android/view/View.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#getChildAt(int)(int index)` | | `int` | `https://developer.android.com/reference/android/view/ViewGroup.html#getChildCount()()` | | `final int` | `https://developer.android.com/reference/android/view/ViewGroup.html#getChildDrawingOrder(int)(int drawingPosition)` | | `static int` | `https://developer.android.com/reference/android/view/ViewGroup.html#getChildMeasureSpec(int, int, int)(int spec, int padding, int childDimension)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#getChildStaticTransformation(android.view.View, android.view.animation.Transformation)(https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/android/view/animation/Transformation.html t)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#getChildVisibleRect(android.view.View, android.graphics.Rect, android.graphics.Point)(https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/android/graphics/Rect.html r, https://developer.android.com/reference/android/graphics/Point.html offset)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#getClipChildren()()` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#getClipToPadding()()` | | `int` | `https://developer.android.com/reference/android/view/ViewGroup.html#getDescendantFocusability()()` | | `https://developer.android.com/reference/android/view/View.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#getFocusedChild()()` | | `https://developer.android.com/reference/android/view/animation/LayoutAnimationController.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#getLayoutAnimation()()` | | `https://developer.android.com/reference/android/view/animation/Animation.AnimationListener.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#getLayoutAnimationListener()()` | | `int` | `https://developer.android.com/reference/android/view/ViewGroup.html#getLayoutMode()()` | | `https://developer.android.com/reference/android/animation/LayoutTransition.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#getLayoutTransition()()` | | `int` | `https://developer.android.com/reference/android/view/ViewGroup.html#getNestedScrollAxes()()` | | `https://developer.android.com/reference/android/view/ViewGroupOverlay.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#getOverlay()()` | | `int` | `https://developer.android.com/reference/android/view/ViewGroup.html#getPersistentDrawingCache()()` **This method is deprecated.** | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#getTouchscreenBlocksFocus()()` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#hasFocus()()` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#hasTransientState()()` | | `int` | `https://developer.android.com/reference/android/view/ViewGroup.html#indexOfChild(android.view.View)(https://developer.android.com/reference/android/view/View.html child)` | | `final void` | `https://developer.android.com/reference/android/view/ViewGroup.html#invalidateChild(android.view.View, android.graphics.Rect)(https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/android/graphics/Rect.html dirty)` **This method is deprecated.** | | `https://developer.android.com/reference/android/view/ViewParent.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#invalidateChildInParent(int[], android.graphics.Rect)(int[] location, https://developer.android.com/reference/android/graphics/Rect.html dirty)` **This method is deprecated.** | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#isAlwaysDrawnWithCacheEnabled()()` **This method is deprecated.** | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#isAnimationCacheEnabled()()` **This method is deprecated.** | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#isChildrenDrawingOrderEnabled()()` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#isChildrenDrawnWithCacheEnabled()()` **This method is deprecated.** | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#isLayoutSuppressed()()` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#isMotionEventSplittingEnabled()()` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#isTransitionGroup()()` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#jumpDrawablesToCurrentState()()` | | `final void` | `https://developer.android.com/reference/android/view/ViewGroup.html#layout(int, int, int, int)(int l, int t, int r, int b)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#measureChild(android.view.View, int, int)( https://developer.android.com/reference/android/view/View.html child, int parentWidthMeasureSpec, int parentHeightMeasureSpec )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#measureChildWithMargins(android.view.View, int, int, int, int)( https://developer.android.com/reference/android/view/View.html child, int parentWidthMeasureSpec, int widthUsed, int parentHeightMeasureSpec, int heightUsed )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#measureChildren(int, int)(int widthMeasureSpec, int heightMeasureSpec)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#notifySubtreeAccessibilityStateChanged(android.view.View, android.view.View, int)( https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/android/view/View.html source, int changeType )` | | `final void` | `https://developer.android.com/reference/android/view/ViewGroup.html#offsetDescendantRectToMyCoords(android.view.View, android.graphics.Rect)(https://developer.android.com/reference/android/view/View.html descendant, https://developer.android.com/reference/android/graphics/Rect.html rect)` | | `final void` | `https://developer.android.com/reference/android/view/ViewGroup.html#offsetRectIntoDescendantCoords(android.view.View, android.graphics.Rect)(https://developer.android.com/reference/android/view/View.html descendant, https://developer.android.com/reference/android/graphics/Rect.html rect)` | | `int[]` | `https://developer.android.com/reference/android/view/ViewGroup.html#onCreateDrawableState(int)(int extraSpace)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#onDescendantInvalidated(android.view.View, android.view.View)(https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/android/view/View.html target)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#onDetachedFromWindow()()` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#onInterceptHoverEvent(android.view.MotionEvent)(https://developer.android.com/reference/android/view/MotionEvent.html event)` | | `abstract void` | `https://developer.android.com/reference/android/view/ViewGroup.html#onLayout(boolean, int, int, int, int)(boolean p, int p1, int p2, int p3, int p4)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#onNestedPrePerformAccessibilityAction(android.view.View, int, android.os.Bundle)( https://developer.android.com/reference/android/view/View.html target, int action, https://developer.android.com/reference/android/os/Bundle.html args )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#onNestedPreScroll(android.view.View, int, int, int[])(https://developer.android.com/reference/android/view/View.html target, int dx, int dy, int[] consumed)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#onNestedScroll(android.view.View, int, int, int, int)( https://developer.android.com/reference/android/view/View.html target, int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#onNestedScrollAccepted(android.view.View, android.view.View, int)(https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/android/view/View.html target, int axes)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#onRequestFocusInDescendants(int, android.graphics.Rect)(int direction, https://developer.android.com/reference/android/graphics/Rect.html previouslyFocusedRect)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#onRequestSendAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent)(https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent.html event)` | | `https://developer.android.com/reference/android/view/PointerIcon.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#onResolvePointerIcon(android.view.MotionEvent, int)(https://developer.android.com/reference/android/view/MotionEvent.html event, int pointerIndex)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#onStartNestedScroll(android.view.View, android.view.View, int)(https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/android/view/View.html target, int nestedScrollAxes)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#onStopNestedScroll(android.view.View)(https://developer.android.com/reference/android/view/View.html child)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#onViewAdded(android.view.View)(https://developer.android.com/reference/android/view/View.html child)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#onViewRemoved(android.view.View)(https://developer.android.com/reference/android/view/View.html child)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#propagateRequestedFrameRate(float, boolean)(float frameRate, boolean forceOverride)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#recomputeViewAttributes(android.view.View)(https://developer.android.com/reference/android/view/View.html child)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#removeAllViews()()` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#removeAllViewsInLayout()()` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#removeDetachedView(android.view.View, boolean)(https://developer.android.com/reference/android/view/View.html child, boolean animate)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#removeView(android.view.View)(https://developer.android.com/reference/android/view/View.html view)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#removeViewAt(int)(int index)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#removeViewInLayout(android.view.View)(https://developer.android.com/reference/android/view/View.html view)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#removeViews(int, int)(int start, int count)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#removeViewsInLayout(int, int)(int start, int count)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#requestChildFocus(android.view.View, android.view.View)(https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/android/view/View.html focused)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean)( https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/android/graphics/Rect.html rectangle, boolean immediate )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#requestDisallowInterceptTouchEvent(boolean)(boolean disallowIntercept)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#requestFocus(int, android.graphics.Rect)(int direction, https://developer.android.com/reference/android/graphics/Rect.html previouslyFocusedRect)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#requestSendAccessibilityEvent(android.view.View, android.view.accessibility.AccessibilityEvent)(https://developer.android.com/reference/android/view/View.html child, https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent.html event)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#requestTransparentRegion(android.view.View)(https://developer.android.com/reference/android/view/View.html child)` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#restoreDefaultFocus()()` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#scheduleLayoutAnimation()()` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setAddStatesFromChildren(boolean)(boolean addsStates)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setAlwaysDrawnWithCacheEnabled(boolean)(boolean always)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setAnimationCacheEnabled(boolean)(boolean enabled)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setChildrenDrawingCacheEnabled(boolean)(boolean enabled)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setChildrenDrawingOrderEnabled(boolean)(boolean enabled)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setChildrenDrawnWithCacheEnabled(boolean)(boolean enabled)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setClipChildren(boolean)(boolean clipChildren)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setClipToPadding(boolean)(boolean clipToPadding)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setDescendantFocusability(int)(int focusability)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setLayoutAnimation(android.view.animation.LayoutAnimationController)(https://developer.android.com/reference/android/view/animation/LayoutAnimationController.html controller)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setLayoutAnimationListener(android.view.animation.Animation.AnimationListener)( https://developer.android.com/reference/android/view/animation/Animation.AnimationListener.html animationListener )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setLayoutMode(int)(int layoutMode)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setLayoutTransition(android.animation.LayoutTransition)(https://developer.android.com/reference/android/animation/LayoutTransition.html transition)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setMotionEventSplittingEnabled(boolean)(boolean split)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setOnHierarchyChangeListener(android.view.ViewGroup.OnHierarchyChangeListener)( https://developer.android.com/reference/android/view/ViewGroup.OnHierarchyChangeListener.html listener )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setPersistentDrawingCache(int)(int drawingCacheToKeep)` **This method is deprecated.** | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setRequestedFrameRate(float)(float frameRate)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setStaticTransformationsEnabled(boolean)(boolean enabled)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setTouchscreenBlocksFocus(boolean)(boolean touchscreenBlocksFocus)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setTransitionGroup(boolean)(boolean isTransitionGroup)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#setWindowInsetsAnimationCallback(android.view.WindowInsetsAnimation.Callback)( https://developer.android.com/reference/android/view/WindowInsetsAnimation.Callback.html callback )` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#shouldDelayChildPressedState()()` | | `boolean` | `https://developer.android.com/reference/android/view/ViewGroup.html#showContextMenuForChild(android.view.View)(https://developer.android.com/reference/android/view/View.html originalView)` | | `https://developer.android.com/reference/android/view/ActionMode.html` | `https://developer.android.com/reference/android/view/ViewGroup.html#startActionModeForChild(android.view.View, android.view.ActionMode.Callback)( https://developer.android.com/reference/android/view/View.html originalView, https://developer.android.com/reference/android/view/ActionMode.Callback.html callback )` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#startLayoutAnimation()()` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#startViewTransition(android.view.View)(https://developer.android.com/reference/android/view/View.html view)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#suppressLayout(boolean)(boolean suppress)` | | `void` | `https://developer.android.com/reference/android/view/ViewGroup.html#updateViewLayout(android.view.View, android.view.ViewGroup.LayoutParams)(https://developer.android.com/reference/android/view/View.html view, https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html params)` | |

## Constants

### DEBUG_SHOW_NONE

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int DEBUG_SHOW_NONE = 0
```

### DEBUG_SHOW_PATH

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int DEBUG_SHOW_PATH = 2
```

### DEBUG_SHOW_PROGRESS

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int DEBUG_SHOW_PROGRESS = 1
```

### TOUCH_UP_COMPLETE

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int TOUCH_UP_COMPLETE = 0
```

### TOUCH_UP_COMPLETE_TO_END

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int TOUCH_UP_COMPLETE_TO_END = 2
```

### TOUCH_UP_COMPLETE_TO_START

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int TOUCH_UP_COMPLETE_TO_START = 1
```

### TOUCH_UP_DECELERATE

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int TOUCH_UP_DECELERATE = 4
```

### TOUCH_UP_DECELERATE_AND_COMPLETE

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int TOUCH_UP_DECELERATE_AND_COMPLETE = 5
```

### TOUCH_UP_NEVER_TO_END

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int TOUCH_UP_NEVER_TO_END = 7
```

### TOUCH_UP_NEVER_TO_START

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int TOUCH_UP_NEVER_TO_START = 6
```

### TOUCH_UP_STOP

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int TOUCH_UP_STOP = 3
```

### VELOCITY_LAYOUT

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int VELOCITY_LAYOUT = 1
```

### VELOCITY_POST_LAYOUT

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int VELOCITY_POST_LAYOUT = 0
```

### VELOCITY_STATIC_LAYOUT

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int VELOCITY_STATIC_LAYOUT = 3
```

### VELOCITY_STATIC_POST_LAYOUT

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static final int VELOCITY_STATIC_POST_LAYOUT = 2
```

## Public fields

### IS_IN_EDIT_MODE

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public static boolean IS_IN_EDIT_MODE
```

## Protected fields

### mMeasureDuringTransition

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
protected boolean mMeasureDuringTransition
```

## Public constructors

### MotionLayout

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public MotionLayout(@NonNull Context context)
```

### MotionLayout

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public MotionLayout(@NonNull Context context, @Nullable AttributeSet attrs)
```

### MotionLayout

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public MotionLayout(
    @NonNull Context context,
    @Nullable AttributeSet attrs,
    int defStyleAttr
)
```

## Public methods

### addTransitionListener

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void addTransitionListener(MotionLayout.TransitionListener listener)
```

adds a listener to be notified of drawer events.

| Parameters |
|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout.TransitionListener listener` | Listener to notify when drawer events occur |

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout.TransitionListener` |   |

### applyViewTransition

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public boolean applyViewTransition(
    int viewTransitionId,
    MotionController motionController
)
```

Apply the view transitions keyFrames to the MotionController. Note ConstraintOverride is not used

| Parameters |
|---|---|
| `int viewTransitionId` | the id of the view transition |
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionController motionController` | the MotionController to apply the keyframes to |

| Returns |
|---|---|
| `boolean` | true if it found and applied the viewTransition false otherwise |

### cloneConstraintSet

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public ConstraintSet cloneConstraintSet(int id)
```

Creates a ConstraintSet based on an existing constraintSet. This makes a copy of the ConstraintSet.

| Parameters |
|---|---|
| `int id` | The ide of the ConstraintSet |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintSet` | the ConstraintSet |

### enableTransition

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void enableTransition(int transitionID, boolean enable)
```

Disable the transition based on transitionID

| Parameters |
|---|---|
| `int transitionID` |   |
| `boolean enable` |   |

### enableViewTransition

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void enableViewTransition(int viewTransitionId, boolean enable)
```

Enable a ViewTransition ID.

| Parameters |
|---|---|
| `int viewTransitionId` | id of ViewTransition |
| `boolean enable` | If false view transition cannot be executed. |

### fireTrigger

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void fireTrigger(int triggerId, boolean positive, float progress)
```

This causes the callback onTransitionTrigger to be called

| Parameters |
|---|---|
| `int triggerId` | The id set set with triggerID |
| `boolean positive` | for positive transition edge |
| `float progress` | the current progress |

### getConstraintSet

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public ConstraintSet getConstraintSet(int id)
```

Get the ConstraintSet associated with an id This returns a link to the constraintSet But in most cases can be used. createConstraintSet makes a copy which is more expensive.

| Parameters |
|---|---|
| `int id` | of the constraintSet |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintSet` | ConstraintSet of MotionLayout |

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#cloneConstraintSet(int)` |   |

### getConstraintSetIds

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public @IdRes int[] getConstraintSetIds()
```

Get the id's of all constraintSets used by MotionLayout

| Returns |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/IdRes int[]` |   |

### getCurrentState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public int getCurrentState()
```

Return the current state id

| Returns |
|---|---|
| `int` | current state id |

### getDefinedTransitions

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public ArrayList<MotionScene.Transition> getDefinedTransitions()
```

Get all Transitions known to the system.

| Returns |
|---|---|
| `https://developer.android.com/reference/java/util/ArrayList.html<https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionScene.Transition>` |   |

### getDesignTool

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public DesignTool getDesignTool()
```

### getEndState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public int getEndState()
```

Gets the state you are currently transition to.

| Returns |
|---|---|
| `int` | The State you are transitioning to. |

### getMatchingConstraintSetIds

```
public int[] getMatchingConstraintSetIds(String[] types)
```

Get the id's of all constraintSets with the matching types

| Returns |
|---|---|
| `int[]` |   |

### getProgress

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public float getProgress()
```

Get current position during an animation.

| Returns |
|---|---|
| `float` | current position from 0.0 to 1.0 inclusive |

### getScene

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public MotionScene getScene()
```

Get the motion scene of the layout. Warning! This gives you direct access to the internal state of the MotionLayout making it easy corrupt the state.

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionScene` | the motion scene |

### getStartState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public int getStartState()
```

Gets the state you are currently transitioning from. If you are transitioning from an unknown state returns -1

| Returns |
|---|---|
| `int` | State you are transitioning from. |

### getTargetPosition

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public float getTargetPosition()
```

Gets the position you are animating to typically 0 or 1. This is useful during animation after touch up

| Returns |
|---|---|
| `float` | The target position you are moving to |

### getTransition

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public MotionScene.Transition getTransition(int id)
```

This returns the internal Transition Structure

| Parameters |
|---|---|
| `int id` |   |

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionScene.Transition` |   |

### getTransitionState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public Bundle getTransitionState()
```

| Returns |
|---|---|
| `https://developer.android.com/reference/android/os/Bundle.html` | bundle containing start and end state |

### getTransitionTimeMs

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public long getTransitionTimeMs()
```

Gets the time of the currently set animation.

| Returns |
|---|---|
| `long` | time in Milliseconds |

### getVelocity

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public float getVelocity()
```

Returns the last velocity used in the transition

| Returns |
|---|---|
| `float` |   |

### getViewVelocity

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void getViewVelocity(
    View view,
    float posOnViewX,
    float posOnViewY,
    float[] returnVelocity,
    int type
)
```

Returns the last layout velocity used in the transition

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/view/View.html view` | The view |
| `float posOnViewX` | The x position on the view |
| `float posOnViewY` | The y position on the view |
| `float[] returnVelocity` | The velocity |
| `int type` | Velocity returned 0 = post layout, 1 = layout, 2 = static postlayout |

### isDelayedApplicationOfInitialState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public boolean isDelayedApplicationOfInitialState()
```

Is initial state changes are applied during onAttachedToWindow or after.

| Returns |
|---|---|
| `boolean` |   |

### isInRotation

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public boolean isInRotation()
```

### isInteractionEnabled

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public boolean isInteractionEnabled()
```

Determines whether MotionLayout's touch \&click handling are enabled. An interaction enabled MotionLayout can respond to user input and initiate and control. MotionLayout interactions are enabled initially by default. MotionLayout touch \&click handling may be enabled or disabled by calling its setInteractionEnabled method.

| Returns |
|---|---|
| `boolean` | true if MotionLayout's touch \&click is enabled, false otherwise |

### isViewTransitionEnabled

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public boolean isViewTransitionEnabled(int viewTransitionId)
```

Is transition id enabled or disabled

| Parameters |
|---|---|
| `int viewTransitionId` | the ide of the transition |

| Returns |
|---|---|
| `boolean` | true if enabled |

### jumpToState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void jumpToState(int id)
```

This jumps to a state It will be at that state after one repaint cycle If the current transition contains that state. It setsProgress 0 or 1 to that state. If not in the current transition itsl

| Parameters |
|---|---|
| `int id` | state to set |

### loadLayoutDescription

```
public void loadLayoutDescription(int motionScene)
```

This overrides ConstraintLayout and only accepts a MotionScene.

| Parameters |
|---|---|
| `int motionScene` | The resource id, or 0 to reset the MotionScene. |

### onInterceptTouchEvent

```
public boolean onInterceptTouchEvent(MotionEvent event)
```

Intercepts the touch event to correctly handle touch region id handover

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/view/MotionEvent.html event` |   |

| Returns |
|---|---|
| `boolean` |   |

### onNestedFling

```
public boolean onNestedFling(
    @NonNull View target,
    float velocityX,
    float velocityY,
    boolean consumed
)
```

### onNestedPreFling

```
public boolean onNestedPreFling(@NonNull View target, float velocityX, float velocityY)
```

### onNestedPreScroll

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void onNestedPreScroll(
    @NonNull View target,
    int dx,
    int dy,
    @NonNull int[] consumed,
    int type
)
```

React to a nested scroll in progress before the target view consumes a portion of the scroll.

When working with nested scrolling often the parent view may want an opportunity to consume the scroll before the nested scrolling child does. An example of this is a drawer that contains a scrollable list. The user will want to be able to scroll the list fully into view before the list itself begins scrolling.

`onNestedPreScroll` is called when a nested scrolling child invokes `https://developer.android.com/reference/android/view/View.html#dispatchNestedPreScroll(int, int, int[], int[])`. The implementation should report how any pixels of the scroll reported by dx, dy were consumed in the `consumed` array. Index 0 corresponds to dx and index 1 corresponds to dy. This parameter will never be null. Initial values for consumed\[0\] and consumed\[1\] will always be 0.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target` | View that initiated the nested scroll |
| `int dx` | Horizontal scroll distance in pixels |
| `int dy` | Vertical scroll distance in pixels |
| `@https://developer.android.com/reference/androidx/annotation/NonNull int[] consumed` | Output. The horizontal and vertical scroll distance consumed by this parent |
| `int type` | the type of input which cause this scroll event |

### onNestedScroll

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void onNestedScroll(
    @NonNull View target,
    int dxConsumed,
    int dyConsumed,
    int dxUnconsumed,
    int dyUnconsumed,
    int type
)
```

React to a nested scroll in progress.

This method will be called when the ViewParent's current nested scrolling child view dispatches a nested scroll event. To receive calls to this method the ViewParent must have previously returned `true` for a call to `https://developer.android.com/reference/androidx/core/view/NestedScrollingParent2#onStartNestedScroll(android.view.View,android.view.View,int,int)`.

Both the consumed and unconsumed portions of the scroll distance are reported to the ViewParent. An implementation may choose to use the consumed portion to match or chase scroll position of multiple child elements, for example. The unconsumed portion may be used to allow continuous dragging of multiple scrolling or draggable elements, such as scrolling a list within a vertical drawer where the drawer begins dragging once the edge of inner scrolling content is reached.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target` | The descendent view controlling the nested scroll |
| `int dxConsumed` | Horizontal scroll distance in pixels already consumed by target |
| `int dyConsumed` | Vertical scroll distance in pixels already consumed by target |
| `int dxUnconsumed` | Horizontal scroll distance in pixels not consumed by target |
| `int dyUnconsumed` | Vertical scroll distance in pixels not consumed by target |
| `int type` | the type of input which cause this scroll event |

### onNestedScroll

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void onNestedScroll(
    @NonNull View target,
    int dxConsumed,
    int dyConsumed,
    int dxUnconsumed,
    int dyUnconsumed,
    int type,
    int[] consumed
)
```

React to a nested scroll in progress.

This method will be called when the ViewParent's current nested scrolling child view dispatches a nested scroll event. To receive calls to this method the ViewParent must have previously returned `true` for a call to `https://developer.android.com/reference/androidx/core/view/NestedScrollingParent2#onStartNestedScroll(android.view.View,android.view.View,int,int)`.

Both the consumed and unconsumed portions of the scroll distance are reported to the ViewParent. An implementation may choose to use the consumed portion to match or chase scroll position of multiple child elements, for example. The unconsumed portion may be used to allow continuous dragging of multiple scrolling or draggable elements, such as scrolling a list within a vertical drawer where the drawer begins dragging once the edge of inner scrolling content is reached.

This method is called when a nested scrolling child invokes `https://developer.android.com/reference/androidx/core/view/NestedScrollingChild3#dispatchNestedScroll(int,int,int,int,int[],int,int[])`} or one of methods it overloads.

An implementation must report how many pixels of the the x and y scroll distances were consumed by this nested scrolling parent by adding the consumed distances to the `consumed` parameter. If this View also implements `https://developer.android.com/reference/androidx/core/view/NestedScrollingChild3`, `consumed` should also be passed up to it's nested scrolling parent so that the parent may also add any scroll distance it consumes. Index 0 corresponds to dx and index 1 corresponds to dy.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target` | The descendant view controlling the nested scroll |
| `int dxConsumed` | Horizontal scroll distance in pixels already consumed by target |
| `int dyConsumed` | Vertical scroll distance in pixels already consumed by target |
| `int dxUnconsumed` | Horizontal scroll distance in pixels not consumed by target |
| `int dyUnconsumed` | Vertical scroll distance in pixels not consumed by target |
| `int type` | the type of input which cause this scroll event |
| `int[] consumed` | Output. Upon this method returning, will contain the scroll distances consumed by this nested scrolling parent and the scroll distances consumed by any other parent up the view hierarchy |

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/core/view/NestedScrollingChild3#dispatchNestedScroll(int,int,int,int,int[],int,int[])` |   |

### onNestedScrollAccepted

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void onNestedScrollAccepted(
    @NonNull View child,
    @NonNull View target,
    int axes,
    int type
)
```

React to the successful claiming of a nested scroll operation.

This method will be called after `https://developer.android.com/reference/androidx/core/view/NestedScrollingParent2#onStartNestedScroll(android.view.View,android.view.View,int,int)` returns true. It offers an opportunity for the view and its superclasses to perform initial configuration for the nested scroll. Implementations of this method should always call their superclass's implementation of this method if one is present.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html child` | Direct child of this ViewParent containing target |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target` | View that initiated the nested scroll |
| `int axes` | Flags consisting of `https://developer.android.com/reference/androidx/core/view/ViewCompat#SCROLL_AXIS_HORIZONTAL()`, `https://developer.android.com/reference/androidx/core/view/ViewCompat#SCROLL_AXIS_VERTICAL()` or both |
| `int type` | the type of input which cause this scroll event |

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/core/view/NestedScrollingParent2#onStartNestedScroll(android.view.View,android.view.View,int,int)` |   |
| `https://developer.android.com/reference/androidx/core/view/NestedScrollingParent2#onStopNestedScroll(android.view.View,int)` |   |

### onRtlPropertiesChanged

```
public void onRtlPropertiesChanged(int layoutDirection)
```

### onStartNestedScroll

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public boolean onStartNestedScroll(
    @NonNull View child,
    @NonNull View target,
    int axes,
    int type
)
```

React to a descendant view initiating a nestable scroll operation, claiming the nested scroll operation if appropriate.

This method will be called in response to a descendant view invoking `https://developer.android.com/reference/androidx/core/view/ViewCompat#startNestedScroll(android.view.View,int)`. Each parent up the view hierarchy will be given an opportunity to respond and claim the nested scrolling operation by returning `true`.

This method may be overridden by ViewParent implementations to indicate when the view is willing to support a nested scrolling operation that is about to begin. If it returns true, this ViewParent will become the target view's nested scrolling parent for the duration of the scroll operation in progress. When the nested scroll is finished this ViewParent will receive a call to `https://developer.android.com/reference/androidx/core/view/NestedScrollingParent2#onStopNestedScroll(android.view.View,int)`.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html child` | Direct child of this ViewParent containing target |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target` | View that initiated the nested scroll |
| `int axes` | Flags consisting of `https://developer.android.com/reference/androidx/core/view/ViewCompat#SCROLL_AXIS_HORIZONTAL()`, `https://developer.android.com/reference/androidx/core/view/ViewCompat#SCROLL_AXIS_VERTICAL()` or both |
| `int type` | the type of input which cause this scroll event |

| Returns |
|---|---|
| `boolean` | true if this ViewParent accepts the nested scroll operation |

### onStopNestedScroll

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void onStopNestedScroll(@NonNull View target, int type)
```

React to a nested scroll operation ending.

Perform cleanup after a nested scrolling operation. This method will be called when a nested scroll stops, for example when a nested touch scroll ends with a `https://developer.android.com/reference/android/view/MotionEvent.html#ACTION_UP` or `https://developer.android.com/reference/android/view/MotionEvent.html#ACTION_CANCEL` event. Implementations of this method should always call their superclass's implementation of this method if one is present.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html target` | View that initiated the nested scroll |
| `int type` | the type of input which cause this scroll event |

### onTouchEvent

```
public boolean onTouchEvent(MotionEvent event)
```

### onViewAdded

```
public void onViewAdded(View view)
```

### onViewRemoved

```
public void onViewRemoved(View view)
```

### rebuildMotion

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2) Deprecated in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void [rebuildMotion](https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout#rebuildMotion())()
```

> [!CAUTION]
> **This method is deprecated.**   
>
> Please call rebuildScene() instead.

rebuild the motion Layouts

### rebuildScene

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void rebuildScene()
```

rebuild the motion Layouts

### removeTransitionListener

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public boolean removeTransitionListener(MotionLayout.TransitionListener listener)
```

adds a listener to be notified of drawer events.

| Parameters |
|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout.TransitionListener listener` | Listener to notify when drawer events occur |

| Returns |
|---|---|
| `boolean` | true if it contained the specified listener |

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout.TransitionListener` |   |

### requestLayout

```
public void requestLayout()
```

### rotateTo

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void rotateTo(int id, int duration)
```

Rotate the layout based on the angle to a ConstraintSet

| Parameters |
|---|---|
| `int id` | constraintSet |
| `int duration` | time to take to rotate |

### scheduleTransitionTo

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void scheduleTransitionTo(int id)
```

on completing the current transition, transition to this state.

| Parameters |
|---|---|
| `int id` |   |

### setDebugMode

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setDebugMode(int debugMode)
```

Display the debugging information such as paths information

| Parameters |
|---|---|
| `int debugMode` | integer representing various debug modes |

### setDelayedApplicationOfInitialState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setDelayedApplicationOfInitialState(boolean delayedApply)
```

Initial state changes are applied during onAttachedToWindow unless this is set to true.

| Parameters |
|---|---|
| `boolean delayedApply` |   |

### setInteractionEnabled

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setInteractionEnabled(boolean enabled)
```

Enables (or disables) MotionLayout's onClick and onSwipe handling.

| Parameters |
|---|---|
| `boolean enabled` | If true, touch \&click is enabled; otherwise it is disabled |

### setInterpolatedProgress

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setInterpolatedProgress(float pos)
```

Set the transition position between 0 an 1

| Parameters |
|---|---|
| `float pos` |   |

### setOnHide

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setOnHide(float progress)
```

Notify OnHide motion helpers

| Parameters |
|---|---|
| `float progress` |   |

### setOnShow

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setOnShow(float progress)
```

Notify OnShow motion helpers

| Parameters |
|---|---|
| `float progress` |   |

### setProgress

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setProgress(float pos)
```

Set the transition position between 0 an 1

| Parameters |
|---|---|
| `float pos` | the position in the transition from 0...1 |

### setProgress

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setProgress(float pos, float velocity)
```

Set the transition position between 0 an 1

| Parameters |
|---|---|
| `float pos` |   |
| `float velocity` |   |

### setScene

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setScene(MotionScene scene)
```

Sets a motion scene to the layout. Subsequent calls to it will override the previous scene.

### setState

```
public void setState(int id, int screenWidth, int screenHeight)
```

Set the State of the Constraint layout. Causing it to load a particular ConstraintSet. for states with variants the variant with matching width and height constraintSet will be chosen

| Parameters |
|---|---|
| `int id` | set the state width and height |
| `int screenWidth` |   |
| `int screenHeight` |   |

### setTransition

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setTransition(int transitionId)
```

Set a transition explicitly to a Transition that has an ID The transition must have been named with android:id=...

| Parameters |
|---|---|
| `int transitionId` | the id to set |

### setTransition

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setTransition(int beginId, int endId)
```

Set a transition explicitly between two constraint sets

| Parameters |
|---|---|
| `int beginId` | the id of the start constraint set |
| `int endId` | the id of the end constraint set |

### setTransitionDuration

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setTransitionDuration(int milliseconds)
```

Change the current Transition duration.

| Parameters |
|---|---|
| `int milliseconds` | duration for transition to complete |

### setTransitionListener

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setTransitionListener(MotionLayout.TransitionListener listener)
```

Set a listener to be notified of drawer events.

| Parameters |
|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout.TransitionListener listener` | Listener to notify when drawer events occur |

| See also |
|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout.TransitionListener` |   |

### setTransitionState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void setTransitionState(Bundle bundle)
```

Set the transition state as a bundle

### toString

```
public String toString()
```

### touchAnimateTo

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void touchAnimateTo(int touchUpMode, float position, float currentVelocity)
```

| Parameters |
|---|---|
| `int touchUpMode` | behavior on touch up, can be either: - TOUCH_UP_COMPLETE (default) : will complete the transition, picking up automatically a correct velocity to do so - TOUCH_UP_STOP : will allow stopping mid-transition - TOUCH_UP_DECELERATE : will slowly decay, possibly past the transition (i.e. it will do a hard stop if unmanaged) - TOUCH_UP_DECELERATE_AND_COMPLETE : will automatically pick between TOUCH_UP_COMPLETE and TOUCH_UP_DECELERATE , TOUCH_UP_STOP (will allow stopping |
| `float position` | animate to given position |
| `float currentVelocity` |   |

### touchSpringTo

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void touchSpringTo(float position, float currentVelocity)
```

Allows you to use trigger spring motion touch behaviour. You must have configured all the spring parameters in the Transition's OnSwipe

| Parameters |
|---|---|
| `float position` | the position 0 - 1 |
| `float currentVelocity` | the current velocity rate of change in position per second |

### transitionToEnd

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void transitionToEnd()
```

Animate to the ending position of the current transition. This will not work during on create as there is no transition Transitions are only set up during onAttach

### transitionToEnd

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void transitionToEnd(Runnable onComplete)
```

Animate to the ending position of the current transition. This will not work during on create as there is no transition Transitions are only set up during onAttach

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/lang/Runnable.html onComplete` | callback when task is done |

### transitionToStart

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void transitionToStart()
```

Animate to the starting position of the current transition. This will not work during on create as there is no transition Transitions are only set up during onAttach

### transitionToStart

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void transitionToStart(Runnable onComplete)
```

Animate to the starting position of the current transition. This will not work during on create as there is no transition Transitions are only set up during onAttach

| Parameters |
|---|---|
| `https://developer.android.com/reference/java/lang/Runnable.html onComplete` | callback when task is done |

### transitionToState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void transitionToState(int id)
```

Animate to the state defined by the id. The id is the id of the ConstraintSet or the id of the State.

| Parameters |
|---|---|
| `int id` | the state to transition to |

### transitionToState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void transitionToState(int id, int duration)
```

Animate to the state defined by the id. The id is the id of the ConstraintSet or the id of the State.

| Parameters |
|---|---|
| `int id` | the state to transition to |
| `int duration` | time in ms. if 0 set by default or transition -1 by current |

### transitionToState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void transitionToState(int id, int screenWidth, int screenHeight)
```

Animate to the state defined by the id. Width and height may be used in the picking of the id using this StateSet.

| Parameters |
|---|---|
| `int id` | the state to transition |
| `int screenWidth` | the with of the motionLayout used to select the variant |
| `int screenHeight` | the height of the motionLayout used to select the variant |

### transitionToState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void transitionToState(
    int id,
    int screenWidth,
    int screenHeight,
    int duration
)
```

Animate to the state defined by the id. Width and height may be used in the picking of the id using this StateSet.

| Parameters |
|---|---|
| `int id` | the state to transition |
| `int screenWidth` | the with of the motionLayout used to select the variant |
| `int screenHeight` | the height of the motionLayout used to select the variant |
| `int duration` | time in ms. if 0 set by default or transition -1 by current |

### updateState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void updateState()
```

Not sure we want this

### updateState

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void updateState(int stateId, ConstraintSet set)
```

update a ConstraintSet under the id.

| Parameters |
|---|---|
| `int stateId` | id of the ConstraintSet |
| `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintSet set` | The constraintSet |

### updateStateAnimate

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
public void updateStateAnimate(int stateId, ConstraintSet set, int duration)
```

Update a ConstraintSet but animate the change.

| Parameters |
|---|---|
| `int stateId` | id of the ConstraintSet |
| `https://developer.android.com/reference/androidx/constraintlayout/widget/ConstraintSet set` | The constraintSet |
| `int duration` | The length of time to perform the animation |

### viewTransition

```
public void viewTransition(int viewTransitionId, View[] view)
```

Execute a ViewTransition. Transition will execute if its conditions are met and it is enabled

| Parameters |
|---|---|
| `int viewTransitionId` |   |
| `View[] view` | The views to apply to |

## Protected methods

### dispatchDraw

```
protected void dispatchDraw(Canvas canvas)
```

Used to draw debugging graphics and to do post layout changes

| Parameters |
|---|---|
| `https://developer.android.com/reference/android/graphics/Canvas.html canvas` |   |

### fireTransitionCompleted

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
protected void fireTransitionCompleted()
```

This causes the callback TransitionCompleted to be called

### getNanoTime

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
protected long getNanoTime()
```

Subclasses can override to define testClasses

| Returns |
|---|---|
| `long` |   |

### obtainVelocityTracker

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
protected MotionLayout.MotionTracker obtainVelocityTracker()
```

Subclasses can override to build test frameworks

| Returns |
|---|---|
| `https://developer.android.com/reference/androidx/constraintlayout/motion/widget/MotionLayout.MotionTracker` |   |

### onAttachedToWindow

```
protected void onAttachedToWindow()
```

### onLayout

```
protected void onLayout(boolean changed, int left, int top, int right, int bottom)
```

### onMeasure

```
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)
```

### parseLayoutDescription

```
protected void parseLayoutDescription(int id)
```

block ConstraintLayout from handling layout description

| Parameters |
|---|---|
| `int id` |   |

### setTransition

Added in [2.2.2](https://developer.android.com/jetpack/androidx/releases/constraintlayout#2.2.2)

```
protected void setTransition(MotionScene.Transition transition)
```