# InProgressStrokesView

Artifact: [androidx.ink:ink-authoring](https://developer.android.com/jetpack/androidx/releases/ink) [View Source](https://cs.android.com/search?q=file:androidx/ink/authoring/InProgressStrokesView.kt+class:androidx.ink.authoring.InProgressStrokesView) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/ink#1.0.0)

*** ** * ** ***


```
@UiThread
public final class InProgressStrokesView extends FrameLayout
```

<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) |||
|   |   | ↳ | [android.widget.FrameLayout](https://developer.android.com/reference/android/widget/FrameLayout.html) ||
|   |   |   | ↳ | [androidx.ink.authoring.InProgressStrokesView](https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView) |

*** ** * ** ***

Displays in-progress ink strokes as `https://developer.android.com/reference/android/view/MotionEvent.html` user inputs are provided to it.

For a Jetpack Compose equivalent which also provides a default input handler, see `https://developer.android.com/reference/kotlin/androidx/ink/authoring/compose/package-summary.html` instead.

The visual styles of strokes are highly customizable by passing the appropriate `https://developer.android.com/reference/androidx/ink/brush/Brush` to `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)`, but if that declarative style specification is not rich enough and instead some more detailed programmatic logic is necessary, consider using `https://developer.android.com/reference/androidx/ink/authoring/InProgressShapesView` instead.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#InProgressStrokesView(android.content.Context,android.util.AttributeSet,kotlin.Int)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/content/Context.html context, https://developer.android.com/reference/android/util/AttributeSet.html attrs, @https://developer.android.com/reference/androidx/annotation/AttrRes int defStyleAttr )` |

| ### Public methods |
|---|---|
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addFinishedStrokesListener(androidx.ink.authoring.InProgressStrokesFinishedListener)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesFinishedListener listener )` Add a listener to be notified when strokes are finished. |
| `final boolean` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,android.view.MotionEvent)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event, int pointerId, https://developer.android.com/reference/android/view/MotionEvent.html prediction )` Add `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,android.view.MotionEvent)` data for `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,android.view.MotionEvent)` to the corresponding in-progress stroke, if present. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(androidx.ink.strokes.StrokeInputBatch,androidx.ink.authoring.InProgressStrokeId,androidx.ink.strokes.StrokeInputBatch)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/strokes/StrokeInputBatch inputs, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId strokeId, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/strokes/StrokeInputBatch prediction )` Add input data from a `https://developer.android.com/reference/androidx/ink/strokes/StrokeInputBatch` to an existing stroke. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event, int pointerId, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId strokeId, https://developer.android.com/reference/android/view/MotionEvent.html prediction )` Add input data, from a particular pointer within a `https://developer.android.com/reference/android/view/MotionEvent.html`, to an existing stroke. |
| `final boolean` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelStroke(android.view.MotionEvent,kotlin.Int)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event, int pointerId)` Cancel the corresponding in-progress stroke with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelStroke(android.view.MotionEvent,kotlin.Int)` data for `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelStroke(android.view.MotionEvent,kotlin.Int)`, if present. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelStroke(androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId strokeId, https://developer.android.com/reference/android/view/MotionEvent.html event)` Cancel the building of a stroke. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelUnfinishedStrokes()()` Cancel all in-progress strokes. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#clearFinishedStrokesListeners()()` Removes all listeners that had previously been added with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addFinishedStrokesListener(androidx.ink.authoring.InProgressStrokesFinishedListener)`. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#eagerInit()()` Eagerly initialize rather than waiting for the first stroke to be drawn. |
| `final boolean` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event, int pointerId)` Finish the corresponding in-progress stroke with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int)` data for `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int)`, if present. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(androidx.ink.strokes.StrokeInput,androidx.ink.authoring.InProgressStrokeId)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/strokes/StrokeInput input, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId strokeId )` Complete the building of a stroke, with the last input data coming from a `https://developer.android.com/reference/androidx/ink/strokes/StrokeInput`. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event, int pointerId, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId strokeId )` Complete the building of a stroke, with the last input data coming from a particular pointer of a `https://developer.android.com/reference/android/view/MotionEvent.html`. |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/Map.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/strokes/Stroke>` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#getFinishedStrokes()()` Returns all the finished strokes that are still being rendered by this view, with map iteration order in the z-order that the strokes are being rendered, from back to front. |
| `final https://developer.android.com/reference/androidx/test/espresso/idling/CountingIdlingResource` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#getInProgressStrokeCounter()()` Allows a test to easily wait until all in-progress strokes are completed and handed off. |
| `final https://developer.android.com/reference/android/graphics/Path.html` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#getMaskPath()()` Denote an area of this `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView` where no ink should be visible. |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Matrix.html` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#getMotionEventToViewTransform()()` The transform matrix to convert `https://developer.android.com/reference/android/view/MotionEvent.html` coordinates, as passed to `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)`, `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)`, and `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)`, into coordinates of this `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView` for rendering. |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/brush/TextureBitmapStore` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#getTextureBitmapStore()()` `https://developer.android.com/reference/androidx/ink/brush/TextureBitmapStore` used to create the `https://developer.android.com/reference/androidx/ink/rendering/android/canvas/CanvasStrokeRenderer`. |
| `final boolean` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#hasUnfinishedStrokes()()` Returns true if there are any in-progress strokes. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#removeFinishedStrokes(kotlin.collections.Set)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/Set.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId> strokeIds)` Stop this view from rendering the strokes with the given IDs. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#removeFinishedStrokesListener(androidx.ink.authoring.InProgressStrokesFinishedListener)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesFinishedListener listener )` Removes a listener that had previously been added with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addFinishedStrokesListener(androidx.ink.authoring.InProgressStrokesFinishedListener)`. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#setInProgressStrokeCounter(androidx.test.espresso.idling.CountingIdlingResource)(https://developer.android.com/reference/androidx/test/espresso/idling/CountingIdlingResource <set-?>)` Allows a test to easily wait until all in-progress strokes are completed and handed off. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#setMaskPath(android.graphics.Path)(https://developer.android.com/reference/android/graphics/Path.html <set-?>)` Denote an area of this `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView` where no ink should be visible. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#setMotionEventToViewTransform(android.graphics.Matrix)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Matrix.html <set-?>)` The transform matrix to convert `https://developer.android.com/reference/android/view/MotionEvent.html` coordinates, as passed to `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)`, `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)`, and `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)`, into coordinates of this `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView` for rendering. |
| `final void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#setTextureBitmapStore(androidx.ink.brush.TextureBitmapStore)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/brush/TextureBitmapStore value)` `https://developer.android.com/reference/androidx/ink/brush/TextureBitmapStore` used to create the `https://developer.android.com/reference/androidx/ink/rendering/android/canvas/CanvasStrokeRenderer`. |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(androidx.ink.strokes.StrokeInput,androidx.ink.brush.Brush,android.graphics.Matrix)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/strokes/StrokeInput input, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/brush/Brush brush, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Matrix.html strokeToViewTransform )` Start building a stroke with the provided `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(androidx.ink.strokes.StrokeInput,androidx.ink.brush.Brush,android.graphics.Matrix)`. |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event, int pointerId, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/brush/Brush brush, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Matrix.html motionEventToWorldTransform, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Matrix.html strokeToWorldTransform )` Start building a stroke using a particular pointer within a `https://developer.android.com/reference/android/view/MotionEvent.html`. |

| ### Protected methods |
|---|---|
| `void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#onAttachedToWindow()()` |
| `void` | `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#onDetachedFromWindow()()` |

### Inherited methods

From [android.widget.FrameLayout](https://developer.android.com/reference/android/widget/FrameLayout.html) `boolean` `https://developer.android.com/reference/android/widget/FrameLayout.html#checkLayoutParams(android.view.ViewGroup.LayoutParams)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html p)` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/widget/FrameLayout.LayoutParams.html` `https://developer.android.com/reference/android/widget/FrameLayout.html#generateDefaultLayoutParams()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/widget/FrameLayout.LayoutParams.html` `https://developer.android.com/reference/android/widget/FrameLayout.html#generateLayoutParams(android.util.AttributeSet)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/AttributeSet.html attrs)` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html` `https://developer.android.com/reference/android/widget/FrameLayout.html#generateLayoutParams(android.view.ViewGroup.LayoutParams)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html lp)` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/CharSequence.html` `https://developer.android.com/reference/android/widget/FrameLayout.html#getAccessibilityClassName()()` `boolean` `[getConsiderGoneChildrenWhenMeasuring](https://developer.android.com/reference/android/widget/FrameLayout.html#getConsiderGoneChildrenWhenMeasuring())()`

**This method is deprecated.** Deprecated in Java
`boolean` `https://developer.android.com/reference/android/widget/FrameLayout.html#getMeasureAllChildren()()` `void` `https://developer.android.com/reference/android/widget/FrameLayout.html#onLayout(boolean, int, int, int, int)(boolean changed, int left, int top, int right, int bottom)` `void` `https://developer.android.com/reference/android/widget/FrameLayout.html#onMeasure(int, int)(int widthMeasureSpec, int heightMeasureSpec)` `void` `https://developer.android.com/reference/android/widget/FrameLayout.html#setForegroundGravity(int)(int foregroundGravity)` `void` `https://developer.android.com/reference/android/widget/FrameLayout.html#setMeasureAllChildren(boolean)(boolean measureAll)` `boolean` `https://developer.android.com/reference/android/widget/FrameLayout.html#shouldDelayChildPressedState()()` From [android.view.View](https://developer.android.com/reference/android/view/View.html) `void` `https://developer.android.com/reference/android/view/View.html#addFocusables(java.util.ArrayList&lt;android.view.View&gt;, int)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/ArrayList.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html> views, int direction)` `void` `https://developer.android.com/reference/android/view/View.html#addOnAttachStateChangeListener(android.view.View.OnAttachStateChangeListener)(
@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.OnUnhandledKeyEventListener.html listener
)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/CharSequence.html text)` `void` `https://developer.android.com/reference/android/view/View.html#autofill(android.view.autofill.AutofillValue)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/autofill/AutofillValue.html value)` `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/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/autofill/AutofillValue.html> values)` `boolean` `https://developer.android.com/reference/android/view/View.html#awakenScrollBars()()` `boolean` `https://developer.android.com/reference/android/view/View.html#awakenScrollBars(int)(int startDelay)` `boolean` `https://developer.android.com/reference/android/view/View.html#awakenScrollBars(int, boolean)(int startDelay, boolean invalidate)` `void` `https://developer.android.com/reference/android/view/View.html#bringToFront()()` `void` `https://developer.android.com/reference/android/view/View.html#buildDrawingCache()()` `void` `https://developer.android.com/reference/android/view/View.html#buildDrawingCache(boolean)(boolean autoScale)` `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/androidx/annotation/NonNull 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()()` `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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/WindowInsets.html in,
@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ContextMenu.html menu)` `void` `https://developer.android.com/reference/android/view/View.html#destroyDrawingCache()()` `boolean` `https://developer.android.com/reference/android/view/View.html#dispatchGenericMotionEvent(android.view.MotionEvent)(@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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 @https://developer.android.com/reference/androidx/annotation/NonNull 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 @https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html insets)` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html` `https://developer.android.com/reference/android/view/View.html#focusSearch(int)(int direction)` `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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/java/util/concurrent/Executor.html executor,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/displayhash/DisplayHashResultCallback.html callback
)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/Nullable 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/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/String.html` `https://developer.android.com/reference/android/view/View.html#getAllowedHandwritingDelegatePackageName()()` `@https://developer.android.com/reference/androidx/annotation/Nullable 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/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/View.html#getAlpha()()` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/Nullable https://developer.android.com/reference/android/graphics/Matrix.html` `https://developer.android.com/reference/android/view/View.html#getAnimationMatrix()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/os/IBinder.html` `https://developer.android.com/reference/android/view/View.html#getApplicationWindowToken()()` `@https://developer.android.com/reference/androidx/annotation/NonNull int[]` `https://developer.android.com/reference/android/view/View.html#getAttributeResolutionStack(int)(int attribute)` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/Map.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/Integer.html, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/Integer.html>` `https://developer.android.com/reference/android/view/View.html#getAttributeSourceResourceMap()()` `@https://developer.android.com/reference/androidx/annotation/Nullable String[]` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html
https://developer.android.com/reference/android/view/View.html#getAutofillHints()()` `final @https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/Nullable 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/androidx/annotation/NonNull 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/androidx/annotation/Nullable https://developer.android.com/reference/android/graphics/BlendMode.html` `https://developer.android.com/reference/android/view/View.html#getBackgroundTintBlendMode()()` `@https://developer.android.com/reference/androidx/annotation/Nullable 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/androidx/annotation/Nullable 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/ViewDebug.ExportedProperty.html(category = "layout")
https://developer.android.com/reference/android/view/View.html#getBaseline()()` `final int` `@https://developer.android.com/reference/android/view/ViewDebug.CapturedViewProperty.html
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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/Nullable 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/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/CharSequence.html` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "accessibility")
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/androidx/annotation/NonNull https://developer.android.com/reference/android/content/Context.html` `@https://developer.android.com/reference/android/view/ViewDebug.CapturedViewProperty.html
https://developer.android.com/reference/android/view/View.html#getContext()()` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/ViewDebug.ExportedProperty.html(category = "focus")
https://developer.android.com/reference/android/view/View.html#getDefaultFocusHighlightEnabled()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/Display.html` `https://developer.android.com/reference/android/view/View.html#getDisplay()()` `final @https://developer.android.com/reference/androidx/annotation/NonNull int[]` `https://developer.android.com/reference/android/view/View.html#getDrawableState()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Bitmap.html` `[getDrawingCache](https://developer.android.com/reference/android/view/View.html#getDrawingCache())()`

**This method is deprecated.** Deprecated in Java
`@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Bitmap.html` `https://developer.android.com/reference/android/view/View.html#getDrawingCache(boolean)(boolean autoScale)` `int` `[getDrawingCacheBackgroundColor](https://developer.android.com/reference/android/view/View.html#getDrawingCacheBackgroundColor())()`

**This method is deprecated.** Deprecated in Java
`int` `[getDrawingCacheQuality](https://developer.android.com/reference/android/view/View.html#getDrawingCacheQuality())()`

**This method is deprecated.** Deprecated in Java
`void` `https://developer.android.com/reference/android/view/View.html#getDrawingRect(android.graphics.Rect)(@https://developer.android.com/reference/androidx/annotation/NonNull 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/ViewDebug.ExportedProperty.html(category = "drawing")
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/ViewDebug.ExportedProperty.html
https://developer.android.com/reference/android/view/View.html#getFilterTouchesWhenObscured()()` `boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html
https://developer.android.com/reference/android/view/View.html#getFitsSystemWindows()()` `int` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "focus", mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "NOT_FOCUSABLE"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 1, to = "FOCUSABLE"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 16, to = "FOCUSABLE_AUTO")])
https://developer.android.com/reference/android/view/View.html#getFocusable()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/ArrayList.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html r)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/Nullable https://developer.android.com/reference/android/graphics/BlendMode.html` `https://developer.android.com/reference/android/view/View.html#getForegroundTintBlendMode()()` `@https://developer.android.com/reference/androidx/annotation/Nullable 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/androidx/annotation/Nullable 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/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html r)` `boolean` `https://developer.android.com/reference/android/view/View.html#getGlobalVisibleRect(android.graphics.Rect, android.graphics.Point)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html r, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Point.html globalOffset)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/Nullable 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/ViewDebug.ExportedProperty.html(category = "layout")
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/androidx/annotation/NonNull 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/androidx/annotation/Nullable 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/androidx/annotation/Nullable 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/ViewDebug.CapturedViewProperty.html
https://developer.android.com/reference/android/view/View.html#getId()()` `int` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "accessibility", mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "auto"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 1, to = "yes"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 2, to = "no"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 4, to = "noHideDescendants")])
https://developer.android.com/reference/android/view/View.html#getImportantForAccessibility()()` `int` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "auto"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 1, to = "yes"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 2, to = "no"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 4, to = "yesExcludeDescendants"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 8, to = "noExcludeDescendants")])
https://developer.android.com/reference/android/view/View.html#getImportantForAutofill()()` `int` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "auto"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 1, to = "yes"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 2, to = "no"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 4, to = "yesExcludeDescendants"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 8, to = "noExcludeDescendants")])
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/androidx/annotation/NonNull 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/ViewDebug.ExportedProperty.html(category = "accessibility")
https://developer.android.com/reference/android/view/View.html#getLabelFor()()` `int` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing", mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "NONE"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 1, to = "SOFTWARE"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 2, to = "HARDWARE")])
https://developer.android.com/reference/android/view/View.html#getLayerType()()` `int` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "layout", mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "RESOLVED_DIRECTION_LTR"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 1, to = "RESOLVED_DIRECTION_RTL")])
https://developer.android.com/reference/android/view/View.html#getLayoutDirection()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(deepExport = true, prefix = "layout_")
https://developer.android.com/reference/android/view/View.html#getLayoutParams()()` `final int` `@https://developer.android.com/reference/android/view/ViewDebug.CapturedViewProperty.html
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/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html r)` `void` `https://developer.android.com/reference/android/view/View.html#getLocationInSurface(int[])(@https://developer.android.com/reference/androidx/annotation/NonNull int[] location)` `void` `https://developer.android.com/reference/android/view/View.html#getLocationInWindow(int[])(@https://developer.android.com/reference/androidx/annotation/NonNull int[] outLocation)` `void` `https://developer.android.com/reference/android/view/View.html#getLocationOnScreen(int[])(@https://developer.android.com/reference/androidx/annotation/NonNull int[] outLocation)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/ViewDebug.ExportedProperty.html(category = "measurement", flagMapping = [@https://developer.android.com/reference/android/view/ViewDebug.FlagToString.html(equals = 16777216, mask = -16777216, name = "MEASURED_STATE_TOO_SMALL")])
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/ViewDebug.ExportedProperty.html(category = "measurement", flagMapping = [@https://developer.android.com/reference/android/view/ViewDebug.FlagToString.html(equals = 16777216, mask = -16777216, name = "MEASURED_STATE_TOO_SMALL")])
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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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()()` `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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewParent.html` `https://developer.android.com/reference/android/view/View.html#getParent()()` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/Nullable https://developer.android.com/reference/android/os/OutcomeReceiver.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/credentials/GetCredentialResponse.html, @https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/Nullable 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/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/View.html#getPivotX()()` `float` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/View.html#getPivotY()()` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/java/util/List.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html>` `https://developer.android.com/reference/android/view/View.html#getPreferKeepClearRects()()` `@https://developer.android.com/reference/androidx/annotation/Nullable 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/androidx/annotation/NonNull 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/ViewDebug.CapturedViewProperty.html
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/androidx/annotation/Nullable https://developer.android.com/reference/android/view/AttachedSurfaceControl.html` `https://developer.android.com/reference/android/view/View.html#getRootSurfaceControl()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html` `https://developer.android.com/reference/android/view/View.html#getRootView()()` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/View.html#getRotation()()` `float` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/View.html#getRotationX()()` `float` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/View.html#getRotationY()()` `float` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/View.html#getScaleX()()` `float` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
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/ViewDebug.ExportedProperty.html(mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "INSIDE_OVERLAY"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 16777216, to = "INSIDE_INSET"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 33554432, to = "OUTSIDE_OVERLAY"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 50331648, to = "OUTSIDE_INSET")])
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/ViewDebug.ExportedProperty.html(category = "drawing")
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/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/CharSequence.html` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "accessibility")
https://developer.android.com/reference/android/view/View.html#getStateDescription()()` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/Nullable https://developer.android.com/reference/java/lang/CharSequence.html` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "accessibility")
https://developer.android.com/reference/android/view/View.html#getSupplementalDescription()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/List.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html>` `https://developer.android.com/reference/android/view/View.html#getSystemGestureExclusionRects()()` `int` `[getSystemUiVisibility](https://developer.android.com/reference/android/view/View.html#getSystemUiVisibility())()`

**This method is deprecated.** Deprecated in Java
`@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/Object.html` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html
https://developer.android.com/reference/android/view/View.html#getTag()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/Object.html` `https://developer.android.com/reference/android/view/View.html#getTag(int)(int key)` `int` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "text", mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "INHERIT"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 1, to = "GRAVITY"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 2, to = "TEXT_START"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 3, to = "TEXT_END"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 4, to = "CENTER"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 5, to = "VIEW_START"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 6, to = "VIEW_END")])
https://developer.android.com/reference/android/view/View.html#getTextAlignment()()` `int` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "text", mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "INHERIT"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 1, to = "FIRST_STRONG"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 2, to = "ANY_RTL"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 3, to = "LTR"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 4, to = "RTL"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 5, to = "LOCALE"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 6, to = "FIRST_STRONG_LTR"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 7, to = "FIRST_STRONG_RTL")])
https://developer.android.com/reference/android/view/View.html#getTextDirection()()` `@https://developer.android.com/reference/androidx/annotation/Nullable 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/ViewDebug.CapturedViewProperty.html
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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/TouchDelegate.html` `https://developer.android.com/reference/android/view/View.html#getTouchDelegate()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/ArrayList.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/View.html#getTransitionAlpha()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html
https://developer.android.com/reference/android/view/View.html#getTransitionName()()` `float` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/View.html#getTranslationX()()` `float` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/View.html#getTranslationY()()` `float` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
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/androidx/annotation/Nullable 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/androidx/annotation/Nullable 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/androidx/annotation/Nullable 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/androidx/annotation/NonNull 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/ViewDebug.ExportedProperty.html(mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "VISIBLE"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 4, to = "INVISIBLE"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 8, to = "GONE")])
https://developer.android.com/reference/android/view/View.html#getVisibility()()` `final int` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "layout")
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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/WindowId.html` `https://developer.android.com/reference/android/view/View.html#getWindowId()()` `@https://developer.android.com/reference/androidx/annotation/Nullable https://developer.android.com/reference/android/view/WindowInsetsController.html` `https://developer.android.com/reference/android/view/View.html#getWindowInsetsController()()` `int` `[getWindowSystemUiVisibility](https://developer.android.com/reference/android/view/View.html#getWindowSystemUiVisibility())()`

**This method is deprecated.** Deprecated in Java
`@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html outRect)` `float` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/View.html#getX()()` `float` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/View.html#getY()()` `float` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
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()()` `void` `https://developer.android.com/reference/android/view/View.html#invalidate()()` `void` `https://developer.android.com/reference/android/view/View.html#invalidate(android.graphics.Rect)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html dirty)` `void` `https://developer.android.com/reference/android/view/View.html#invalidate(int, int, int, int)(int l, int t, int r, int b)` `void` `https://developer.android.com/reference/android/view/View.html#invalidateDrawable(android.graphics.drawable.Drawable)(@https://developer.android.com/reference/androidx/annotation/NonNull 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/ViewDebug.ExportedProperty.html(category = "accessibility")
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/ViewDebug.ExportedProperty.html
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/ViewDebug.ExportedProperty.html
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` `[isCredential](https://developer.android.com/reference/android/view/View.html#isCredential())()`

**This method is deprecated.** Deprecated in Java
`boolean` `https://developer.android.com/reference/android/view/View.html#isDirty()()` `boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
[isDrawingCacheEnabled](https://developer.android.com/reference/android/view/View.html#isDrawingCacheEnabled())()`

**This method is deprecated.** Deprecated in Java
`boolean` `https://developer.android.com/reference/android/view/View.html#isDuplicateParentStateEnabled()()` `boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html
https://developer.android.com/reference/android/view/View.html#isEnabled()()` `final boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "focus")
https://developer.android.com/reference/android/view/View.html#isFocusable()()` `final boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "focus")
https://developer.android.com/reference/android/view/View.html#isFocusableInTouchMode()()` `boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "focus")
https://developer.android.com/reference/android/view/View.html#isFocused()()` `final boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "focus")
https://developer.android.com/reference/android/view/View.html#isFocusedByDefault()()` `boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
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/ViewDebug.ExportedProperty.html
https://developer.android.com/reference/android/view/View.html#isHapticFeedbackEnabled()()` `boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
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/ViewDebug.ExportedProperty.html
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/ViewDebug.ExportedProperty.html
https://developer.android.com/reference/android/view/View.html#isInTouchMode()()` `final boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "focus")
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/ViewDebug.ExportedProperty.html(category = "drawing")
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/ViewDebug.ExportedProperty.html
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/ViewDebug.ExportedProperty.html
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/ViewDebug.ExportedProperty.html
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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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)` `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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ContextMenu.html menu)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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;)(
@https://developer.android.com/reference/androidx/annotation/NonNull int[] supportedFormats,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/function/Consumer.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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;)(
@https://developer.android.com/reference/androidx/annotation/NonNull long[] virtualIds,
@https://developer.android.com/reference/androidx/annotation/NonNull int[] supportedFormats,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/function/Consumer.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/KeyEvent.html event)` `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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/os/Parcelable.html state)` `void` `https://developer.android.com/reference/android/view/View.html#onRtlPropertiesChanged(int)(int layoutDirection)` `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/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html localVisibleRect,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Point.html windowOffset,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/function/Consumer.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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#onTouchEvent(android.view.MotionEvent)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event)` `boolean` `https://developer.android.com/reference/android/view/View.html#onTrackballEvent(android.view.MotionEvent)(@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/util/LongSparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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)` `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#performContextClick(float, float)(float x, float y)` `boolean` `https://developer.android.com/reference/android/view/View.html#performHapticFeedback(int)(int feedbackConstant)` `boolean` `https://developer.android.com/reference/android/view/View.html#performHapticFeedback(android.os.vibrator.HapticFeedbackRequest)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/os/vibrator/HapticFeedbackRequest.html request)` `boolean` `https://developer.android.com/reference/android/view/View.html#performHapticFeedback(int, int)(int feedbackConstant, int flags)` `boolean` `https://developer.android.com/reference/android/view/View.html#performLongClick()()` `boolean` `https://developer.android.com/reference/android/view/View.html#performLongClick(float, float)(float x, float y)` `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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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#postInvalidate(int, int, int, int)(int left, int top, int right, int bottom)` `void` `https://developer.android.com/reference/android/view/View.html#postInvalidateDelayed(long)(long delayMilliseconds)` `void` `https://developer.android.com/reference/android/view/View.html#postInvalidateDelayed(long, int, int, int, int)(
long delayMilliseconds,
int left,
int top,
int right,
int bottom
)` `void` `https://developer.android.com/reference/android/view/View.html#postInvalidateOnAnimation()()` `void` `https://developer.android.com/reference/android/view/View.html#postInvalidateOnAnimation(int, int, int, int)(int left, int top, int right, int bottom)` `void` `https://developer.android.com/reference/android/view/View.html#postOnAnimation(java.lang.Runnable)(@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/Runnable.html action, long delayMillis)` `void` `https://developer.android.com/reference/android/view/View.html#refreshDrawableState()()` `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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/app/jank/AppJankStats.html appJankStats)` `void` `https://developer.android.com/reference/android/view/View.html#requestApplyInsets()()` `void` `[requestFitSystemWindows](https://developer.android.com/reference/android/view/View.html#requestFitSystemWindows())()`

**This method is deprecated.** Deprecated in Java
`final boolean` `https://developer.android.com/reference/android/view/View.html#requestFocus()()` `final boolean` `https://developer.android.com/reference/android/view/View.html#requestFocus(int)(int direction)` `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()()` `void` `https://developer.android.com/reference/android/view/View.html#requestPointerCapture(int)(int mode)` `boolean` `https://developer.android.com/reference/android/view/View.html#requestRectangleOnScreen(android.graphics.Rect)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html rectangle)` `boolean` `https://developer.android.com/reference/android/view/View.html#requestRectangleOnScreen(android.graphics.Rect, boolean)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html rectangle, boolean immediate)` `boolean` `https://developer.android.com/reference/android/view/View.html#requestRectangleOnScreen(android.graphics.Rect, boolean, int)(
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html rectangle,
boolean immediate,
int source
)` `final void` `https://developer.android.com/reference/android/view/View.html#requestUnbufferedDispatch(android.view.MotionEvent)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event)` `final void` `https://developer.android.com/reference/android/view/View.html#requestUnbufferedDispatch(int)(int source)` `final @https://developer.android.com/reference/androidx/annotation/NonNull 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()()` `void` `https://developer.android.com/reference/android/view/View.html#restoreHierarchyState(android.util.SparseArray&lt;android.os.Parcelable&gt;)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/content/Context.html context,
@https://developer.android.com/reference/androidx/annotation/NonNull int[] styleable,
https://developer.android.com/reference/android/util/AttributeSet.html attrs,
@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/drawable/Drawable.html who, @https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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...)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html... 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/drawable/Drawable.html background)` `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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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` `[setDrawingCacheBackgroundColor](https://developer.android.com/reference/android/view/View.html#setDrawingCacheBackgroundColor(int))(int color)`

**This method is deprecated.** Deprecated in Java
`void` `[setDrawingCacheEnabled](https://developer.android.com/reference/android/view/View.html#setDrawingCacheEnabled(boolean))(boolean enabled)`

**This method is deprecated.** Deprecated in Java
`void` `[setDrawingCacheQuality](https://developer.android.com/reference/android/view/View.html#setDrawingCacheQuality(int))(int quality)`

**This method is deprecated.** Deprecated in Java
`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#setFocusable(int)(int 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/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/drawable/Drawable.html foreground)` `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)` `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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.OnSystemUiVisibilityChangeListener.html l
)` `void` `https://developer.android.com/reference/android/view/View.html#setOnTouchListener(android.view.View.OnTouchListener)(@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/credentials/GetCredentialRequest.html request,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/os/OutcomeReceiver.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/credentials/GetCredentialResponse.html, @https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/java/util/List.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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#setScrollIndicators(int, int)(int indicators, int mask)` `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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/java/util/List.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html> rects)` `void` `[setSystemUiVisibility](https://developer.android.com/reference/android/view/View.html#setSystemUiVisibility(int))(int visibility)`

**This method is deprecated.** Deprecated in Java
`void` `https://developer.android.com/reference/android/view/View.html#setTag(java.lang.Object)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/Object.html tag)` `void` `https://developer.android.com/reference/android/view/View.html#setTag(int, java.lang.Object)(int key, @https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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)` `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()()` `boolean` `https://developer.android.com/reference/android/view/View.html#showContextMenu(float, float)(float x, float y)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ActionMode.Callback.html callback)` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ActionMode.html` `https://developer.android.com/reference/android/view/View.html#startActionMode(android.view.ActionMode.Callback, int)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ActionMode.Callback.html callback, int type)` `void` `https://developer.android.com/reference/android/view/View.html#startAnimation(android.view.animation.Animation)(@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/content/ClipData.html data,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.DragShadowBuilder.html shadowBuilder,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/Object.html myLocalState,
int flags
)` `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/androidx/annotation/NonNull https://developer.android.com/reference/android/content/ClipData.html data,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.DragShadowBuilder.html shadowBuilder,
@https://developer.android.com/reference/androidx/annotation/NonNull 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()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/String.html` `https://developer.android.com/reference/android/view/View.html#toString()()` `void` `https://developer.android.com/reference/android/view/View.html#transformMatrixToGlobal(android.graphics.Matrix)(@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Matrix.html matrix)` `void` `https://developer.android.com/reference/android/view/View.html#unscheduleDrawable(android.graphics.drawable.Drawable)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/drawable/Drawable.html who)` `void` `https://developer.android.com/reference/android/view/View.html#unscheduleDrawable(android.graphics.drawable.Drawable, java.lang.Runnable)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/drawable/Drawable.html who, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/Runnable.html what)` `final void` `https://developer.android.com/reference/android/view/View.html#updateDragShadow(android.view.View.DragShadowBuilder)(@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/drawable/Drawable.html who)` `boolean` `https://developer.android.com/reference/android/view/View.html#willNotCacheDrawing()()` `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/androidx/annotation/NonNull https://developer.android.com/reference/java/util/ArrayList.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo.html info,
@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/java/util/ArrayList.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/java/util/Collection.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/java/util/ArrayList.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html child)` `void` `https://developer.android.com/reference/android/view/ViewGroup.html#addView(android.view.View, int)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html child, int index)` `void` `https://developer.android.com/reference/android/view/ViewGroup.html#addView(android.view.View, android.view.ViewGroup.LayoutParams)(@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/ViewGroup.LayoutParams.html params)` `void` `https://developer.android.com/reference/android/view/ViewGroup.html#addView(android.view.View, int, android.view.ViewGroup.LayoutParams)(
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html child,
int index,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html params
)` `void` `https://developer.android.com/reference/android/view/ViewGroup.html#addView(android.view.View, int, int)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html child, int width, int height)` `boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#addViewInLayout(android.view.View, int, android.view.ViewGroup.LayoutParams)(
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html child,
int index,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html params
)` `boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#addViewInLayout(android.view.View, int, android.view.ViewGroup.LayoutParams, boolean)(
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html child,
int index,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html params,
boolean preventRequestLayout
)` `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/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/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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html child,
int index,
@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html child)` `boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#canAnimate()()` `void` `https://developer.android.com/reference/android/view/ViewGroup.html#childDrawableStateChanged(android.view.View)(@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html child)` `void` `https://developer.android.com/reference/android/view/ViewGroup.html#detachViewFromParent(int)(int index)` `void` `https://developer.android.com/reference/android/view/ViewGroup.html#detachViewsFromParent(int, int)(int start, int count)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/java/util/Map.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/autofill/AutofillId.html, @https://developer.android.com/reference/androidx/annotation/NonNull long[]> viewIds,
@https://developer.android.com/reference/androidx/annotation/NonNull int[] supportedFormats,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/translation/TranslationCapability.html capability,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/List.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html localVisibleRect,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Point.html windowOffset,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/function/Consumer.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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)` `void` `https://developer.android.com/reference/android/view/ViewGroup.html#dispatchThawSelfOnly(android.util.SparseArray&lt;android.os.Parcelable&gt;)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/util/SparseArray.html<@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/WindowInsetsAnimation.html animation
)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/WindowInsets.html insets,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/List.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/WindowInsetsAnimation.html> runningAnimations
)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/WindowInsetsAnimation.html animation,
@https://developer.android.com/reference/androidx/annotation/NonNull 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)` `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/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Canvas.html canvas, @https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html view)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/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 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/androidx/annotation/NonNull https://developer.android.com/reference/java/util/ArrayList.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html> outViews,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/lang/CharSequence.html text,
int flags
)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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)` `int` `https://developer.android.com/reference/android/view/ViewGroup.html#getChildDrawingOrder(int, int)(int childCount, int drawingPosition)` `boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#getChildStaticTransformation(android.view.View, android.view.animation.Transformation)(
@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/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/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/graphics/Rect.html r,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Point.html offset
)` `boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/ViewGroup.html#getClipChildren()()` `boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/ViewGroup.html#getClipToPadding()()` `int` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "focus", mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 131072, to = "FOCUS_BEFORE_DESCENDANTS"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 262144, to = "FOCUS_AFTER_DESCENDANTS"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 393216, to = "FOCUS_BLOCK_DESCENDANTS")])
https://developer.android.com/reference/android/view/ViewGroup.html#getDescendantFocusability()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html` `https://developer.android.com/reference/android/view/ViewGroup.html#getFocusedChild()()` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/ViewDebug.ExportedProperty.html(category = "layout", mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "RESOLVED_DIRECTION_LTR"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 1, to = "RESOLVED_DIRECTION_RTL")])
https://developer.android.com/reference/android/view/ViewGroup.html#getLayoutDirection()()` `int` `https://developer.android.com/reference/android/view/ViewGroup.html#getLayoutMode()()` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewGroupOverlay.html` `https://developer.android.com/reference/android/view/ViewGroup.html#getOverlay()()` `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewParent.html` `https://developer.android.com/reference/android/view/ViewGroup.html#getParent()()` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewParent.html` `https://developer.android.com/reference/android/view/ViewGroup.html#getParentForAccessibility()()` `int` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing", mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "NONE"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 1, to = "ANIMATION"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 2, to = "SCROLLING"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 3, to = "ALL")])
[getPersistentDrawingCache](https://developer.android.com/reference/android/view/ViewGroup.html#getPersistentDrawingCache())()`

**This method is deprecated.** Deprecated in Java
`int` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "text", mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "INHERIT"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 1, to = "GRAVITY"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 2, to = "TEXT_START"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 3, to = "TEXT_END"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 4, to = "CENTER"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 5, to = "VIEW_START"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 6, to = "VIEW_END")])
https://developer.android.com/reference/android/view/ViewGroup.html#getTextAlignment()()` `int` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "text", mapping = [@https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 0, to = "INHERIT"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 1, to = "FIRST_STRONG"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 2, to = "ANY_RTL"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 3, to = "LTR"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 4, to = "RTL"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 5, to = "LOCALE"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 6, to = "FIRST_STRONG_LTR"), @https://developer.android.com/reference/android/view/ViewDebug.IntToString.html(from = 7, to = "FIRST_STRONG_RTL")])
https://developer.android.com/reference/android/view/ViewGroup.html#getTextDirection()()` `boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "focus")
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/androidx/annotation/NonNull 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/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/graphics/Rect.html dirty)` `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewParent.html` `https://developer.android.com/reference/android/view/ViewGroup.html#invalidateChildInParent(int[], android.graphics.Rect)(@https://developer.android.com/reference/androidx/annotation/NonNull int[] location, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html dirty)` `boolean` `[isAlwaysDrawnWithCacheEnabled](https://developer.android.com/reference/android/view/ViewGroup.html#isAlwaysDrawnWithCacheEnabled())()`

**This method is deprecated.** Deprecated in Java
`boolean` `[isAnimationCacheEnabled](https://developer.android.com/reference/android/view/ViewGroup.html#isAnimationCacheEnabled())()`

**This method is deprecated.** Deprecated in Java
`boolean` `@https://developer.android.com/reference/android/view/ViewDebug.ExportedProperty.html(category = "drawing")
https://developer.android.com/reference/android/view/ViewGroup.html#isChildrenDrawingOrderEnabled()()` `boolean` `[isChildrenDrawnWithCacheEnabled](https://developer.android.com/reference/android/view/ViewGroup.html#isChildrenDrawnWithCacheEnabled())()`

**This method is deprecated.** Deprecated in Java
`boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#isLayoutDirectionResolved()()` `boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#isLayoutRequested()()` `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#isTextAlignmentResolved()()` `boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#isTextDirectionResolved()()` `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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/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 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html descendant,
@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html descendant,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Rect.html rect
)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/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)` `boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#onInterceptHoverEvent(android.view.MotionEvent)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event)` `boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#onInterceptTouchEvent(android.view.MotionEvent)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html ev)` `boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#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/android/view/ViewGroup.html#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)` `boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#onNestedPrePerformAccessibilityAction(android.view.View, int, android.os.Bundle)(
@https://developer.android.com/reference/androidx/annotation/NonNull 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/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
)` `void` `https://developer.android.com/reference/android/view/ViewGroup.html#onNestedScroll(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 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/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)` `boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#onRequestFocusInDescendants(int, android.graphics.Rect)(
int direction,
@https://developer.android.com/reference/androidx/annotation/NonNull 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/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/accessibility/AccessibilityEvent.html event
)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/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 nestedScrollAxes
)` `void` `https://developer.android.com/reference/android/view/ViewGroup.html#onStopNestedScroll(android.view.View)(@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/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 focused)` `boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean)(
@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/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/androidx/annotation/NonNull 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/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/accessibility/AccessibilityEvent.html event
)` `void` `https://developer.android.com/reference/android/view/ViewGroup.html#requestTransparentRegion(android.view.View)(@https://developer.android.com/reference/androidx/annotation/NonNull 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` `[setAlwaysDrawnWithCacheEnabled](https://developer.android.com/reference/android/view/ViewGroup.html#setAlwaysDrawnWithCacheEnabled(boolean))(boolean always)`

**This method is deprecated.** Deprecated in Java
`void` `[setAnimationCacheEnabled](https://developer.android.com/reference/android/view/ViewGroup.html#setAnimationCacheEnabled(boolean))(boolean enabled)`

**This method is deprecated.** Deprecated in Java
`void` `https://developer.android.com/reference/android/view/ViewGroup.html#setChildrenDrawingCacheEnabled(boolean)(boolean enabled)` `void` `https://developer.android.com/reference/android/view/ViewGroup.html#setChildrenDrawingOrderEnabled(boolean)(boolean enabled)` `void` `[setChildrenDrawnWithCacheEnabled](https://developer.android.com/reference/android/view/ViewGroup.html#setChildrenDrawnWithCacheEnabled(boolean))(boolean enabled)`

**This method is deprecated.** Deprecated in Java
`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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewGroup.OnHierarchyChangeListener.html listener
)` `void` `[setPersistentDrawingCache](https://developer.android.com/reference/android/view/ViewGroup.html#setPersistentDrawingCache(int))(int drawingCacheToKeep)`

**This method is deprecated.** Deprecated in Java
`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#showContextMenuForChild(android.view.View)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html originalView)` `boolean` `https://developer.android.com/reference/android/view/ViewGroup.html#showContextMenuForChild(android.view.View, float, float)(@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html originalView, float x, float y)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html originalView,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ActionMode.Callback.html callback
)` `@https://developer.android.com/reference/androidx/annotation/NonNull 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, int)(
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html originalView,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ActionMode.Callback.html callback,
int type
)` `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/androidx/annotation/NonNull 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/androidx/annotation/NonNull https://developer.android.com/reference/android/view/View.html view,
@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html params
)` From [android.view.ViewParent](https://developer.android.com/reference/android/view/ViewParent.html) `boolean` `https://developer.android.com/reference/android/view/ViewParent.html#requestChildRectangleOnScreen(android.view.View, android.graphics.Rect, boolean, 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/graphics/Rect.html rectangle,
boolean immediate,
int source
)`

## Public constructors

### InProgressStrokesView

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

```
public InProgressStrokesView(
    @NonNull Context context,
    AttributeSet attrs,
    @AttrRes int defStyleAttr
)
```

## Public methods

### addFinishedStrokesListener

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

```
public final void addFinishedStrokesListener(
    @NonNull InProgressStrokesFinishedListener listener
)
```

Add a listener to be notified when strokes are finished. These strokes will continue to be rendered within this view until `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#removeFinishedStrokes(kotlin.collections.Set)` is called. All of the strokes that have been delivered to listeners but have not yet been removed with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#removeFinishedStrokes(kotlin.collections.Set)` are available through `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#getFinishedStrokes()`.

### addToStroke

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

```
public final boolean addToStroke(
    @NonNull MotionEvent event,
    int pointerId,
    MotionEvent prediction
)
```

Add `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,android.view.MotionEvent)` data for `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,android.view.MotionEvent)` to the corresponding in-progress stroke, if present. The stroke must have been started with an overload of `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` that accepts a `https://developer.android.com/reference/android/view/MotionEvent.html`.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event` | the next `https://developer.android.com/reference/android/view/MotionEvent.html` as part of a Stroke's input data, typically an ACTION_MOVE. |
| `int pointerId` | the index of the relevant pointer in the `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,android.view.MotionEvent)`. If `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,android.view.MotionEvent)` does not correspond to an in-progress stroke, this call is ignored. |
| `https://developer.android.com/reference/android/view/MotionEvent.html prediction` | optional predicted `https://developer.android.com/reference/android/view/MotionEvent.html` containing predicted inputs between event and the time of the next frame, as generated by `https://developer.android.com/reference/androidx/input/motionprediction/MotionEventPredictor#predict()`. |

| Returns |
|---|---|
| `boolean` | Whether the pointer corresponds to an in-progress stroke. |

### addToStroke

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

```
public final void addToStroke(
    @NonNull StrokeInputBatch inputs,
    @NonNull InProgressStrokeId strokeId,
    @NonNull StrokeInputBatch prediction
)
```

Add input data from a `https://developer.android.com/reference/androidx/ink/strokes/StrokeInputBatch` to an existing stroke. The stroke must have been started with an overload of `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` that accepts a `https://developer.android.com/reference/androidx/ink/strokes/StrokeInput`.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/strokes/StrokeInputBatch inputs` | The next `https://developer.android.com/reference/androidx/ink/strokes/StrokeInputBatch` to be added to the stroke. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId strokeId` | The `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId` of the stroke to be built upon. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/strokes/StrokeInputBatch prediction` | Predicted `https://developer.android.com/reference/androidx/ink/strokes/StrokeInputBatch` containing predicted inputs between `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(androidx.ink.strokes.StrokeInputBatch,androidx.ink.authoring.InProgressStrokeId,androidx.ink.strokes.StrokeInputBatch)` and the time of the next frame. This can technically be empty, but it is strongly recommended for it to be non-empty to achieve the best performance. |

### addToStroke

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

```
public final void addToStroke(
    @NonNull MotionEvent event,
    int pointerId,
    @NonNull InProgressStrokeId strokeId,
    MotionEvent prediction
)
```

Add input data, from a particular pointer within a `https://developer.android.com/reference/android/view/MotionEvent.html`, to an existing stroke. The stroke must have been started with an overload of `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` that accepts a `https://developer.android.com/reference/android/view/MotionEvent.html`.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event` | The next `https://developer.android.com/reference/android/view/MotionEvent.html` as part of a stroke's input data, typically one with `https://developer.android.com/reference/android/view/MotionEvent.html#getActionMasked()` of `https://developer.android.com/reference/android/view/MotionEvent.html#ACTION_MOVE`. |
| `int pointerId` | The identifier of the pointer within `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)` to be used for inking, as determined by `https://developer.android.com/reference/android/view/MotionEvent.html#getPointerId(int)` and used as an input to `https://developer.android.com/reference/android/view/MotionEvent.html#findPointerIndex(int)`. Note that this is the ID of the pointer, not its index. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId strokeId` | The `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId` of the stroke to be built upon. |
| `https://developer.android.com/reference/android/view/MotionEvent.html prediction` | Predicted `https://developer.android.com/reference/android/view/MotionEvent.html` containing predicted inputs between `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)` and the time of the next frame. This value typically comes from `https://developer.android.com/reference/androidx/input/motionprediction/MotionEventPredictor#predict()`. It is technically optional, but it is strongly recommended to achieve the best performance. |

### cancelStroke

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

```
public final boolean cancelStroke(@NonNull MotionEvent event, int pointerId)
```

Cancel the corresponding in-progress stroke with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelStroke(android.view.MotionEvent,kotlin.Int)` data for `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelStroke(android.view.MotionEvent,kotlin.Int)`, if present. The stroke must have been started with an overload of `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` that accepts a `https://developer.android.com/reference/android/view/MotionEvent.html`.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event` | The `https://developer.android.com/reference/android/view/MotionEvent.html` that led to this cancellation, typically an ACTION_CANCEL. |
| `int pointerId` | the id of the relevant pointer in the `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelStroke(android.view.MotionEvent,kotlin.Int)`. |

| Returns |
|---|---|
| `boolean` | Whether the pointer corresponded to an in-progress stroke. |

### cancelStroke

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

```
public final void cancelStroke(@NonNull InProgressStrokeId strokeId, MotionEvent event)
```

Cancel the building of a stroke. It will no longer be visible within this `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView`, and no completed `https://developer.android.com/reference/androidx/ink/strokes/Stroke` object will come through `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesFinishedListener`.

This is typically done for one of three reasons:

1. A `https://developer.android.com/reference/android/view/MotionEvent.html` with `https://developer.android.com/reference/android/view/MotionEvent.html#getActionMasked()` of `https://developer.android.com/reference/android/view/MotionEvent.html#ACTION_CANCEL`. This tends to be when an entire gesture has been canceled, for example when a parent `https://developer.android.com/reference/android/view/View.html` uses `https://developer.android.com/reference/android/view/ViewGroup.html#onInterceptTouchEvent(android.view.MotionEvent)` to intercept and handle the gesture itself.

2. A `https://developer.android.com/reference/android/view/MotionEvent.html` with `https://developer.android.com/reference/android/view/MotionEvent.html#getFlags()` containing `https://developer.android.com/reference/android/view/MotionEvent.html#FLAG_CANCELED`. This tends to be when the system has detected an unintentional touch, such as from the user resting their palm on the screen while writing or drawing, after some events from that unintentional pointer have already been delivered.

3. An app's business logic reinterprets a gesture previously used for inking as something else, and the earlier inking may be seen as unintentional. For example, an app that uses single-pointer gestures for inking and dual-pointer gestures for pan/zoom/rotate will start inking when the first pointer goes down, but when the second pointer goes down it may want to cancel the stroke from the first pointer rather than leave the small ink marks on the screen.

Does nothing if a stroke with the given `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelStroke(androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)` is not in progress.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId strokeId` | The `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId` of the stroke to be canceled. |
| `https://developer.android.com/reference/android/view/MotionEvent.html event` | The `https://developer.android.com/reference/android/view/MotionEvent.html` that led to this cancellation, if applicable. |

### cancelUnfinishedStrokes

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

```
public final void cancelUnfinishedStrokes()
```

Cancel all in-progress strokes.

### clearFinishedStrokesListeners

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

```
public final void clearFinishedStrokesListeners()
```

Removes all listeners that had previously been added with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addFinishedStrokesListener(androidx.ink.authoring.InProgressStrokesFinishedListener)`.

### eagerInit

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

```
public final void eagerInit()
```

Eagerly initialize rather than waiting for the first stroke to be drawn. Since initialization can be somewhat heavyweight, doing this as soon as it's likely for the user to start drawing can prevent initialization from introducing latency to the first stroke.

### finishStroke

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

```
public final boolean finishStroke(@NonNull MotionEvent event, int pointerId)
```

Finish the corresponding in-progress stroke with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int)` data for `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int)`, if present. The stroke must have been started with an overload of `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` that accepts a `https://developer.android.com/reference/android/view/MotionEvent.html`.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event` | the last `https://developer.android.com/reference/android/view/MotionEvent.html` as part of a stroke, typically an ACTION_UP. |
| `int pointerId` | the id of the relevant pointer in the `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int)`. If `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int)` does not correspond to an in-progress stroke, this call is ignored. |

| Returns |
|---|---|
| `boolean` | Whether the pointer corresponded to an in-progress stroke. |

### finishStroke

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

```
public final void finishStroke(
    @NonNull StrokeInput input,
    @NonNull InProgressStrokeId strokeId
)
```

Complete the building of a stroke, with the last input data coming from a `https://developer.android.com/reference/androidx/ink/strokes/StrokeInput`. The stroke must have been started with an overload of `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` that accepts a `https://developer.android.com/reference/androidx/ink/strokes/StrokeInput`.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/strokes/StrokeInput input` | The last `https://developer.android.com/reference/androidx/ink/strokes/StrokeInput` in the stroke. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId strokeId` | The `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId` of the stroke to be finished. |

### finishStroke

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

```
public final void finishStroke(
    @NonNull MotionEvent event,
    int pointerId,
    @NonNull InProgressStrokeId strokeId
)
```

Complete the building of a stroke, with the last input data coming from a particular pointer of a `https://developer.android.com/reference/android/view/MotionEvent.html`. The stroke must have been started with an overload of `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` that accepts a `https://developer.android.com/reference/android/view/MotionEvent.html`.

When the stroke no longer needs to be rendered by this `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView` and can instead be rendered anywhere in the `https://developer.android.com/reference/android/view/View.html` hierarchy using `https://developer.android.com/reference/androidx/ink/rendering/android/canvas/CanvasStrokeRenderer`, the resulting `https://developer.android.com/reference/androidx/ink/strokes/Stroke` object will be passed to the `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesFinishedListener` instances registered with this `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView` using `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addFinishedStrokesListener(androidx.ink.authoring.InProgressStrokesFinishedListener)`.

Does nothing if a stroke with the given `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)` is not in progress.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event` | The last `https://developer.android.com/reference/android/view/MotionEvent.html` as part of a stroke's input data, typically one with `https://developer.android.com/reference/android/view/MotionEvent.html#getActionMasked()` of `https://developer.android.com/reference/android/view/MotionEvent.html#ACTION_UP` or `https://developer.android.com/reference/android/view/MotionEvent.html#ACTION_POINTER_UP`, but can also be other actions. |
| `int pointerId` | The identifier of the pointer within `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)` to be used for inking, as determined by `https://developer.android.com/reference/android/view/MotionEvent.html#getPointerId(int)` and used as an input to `https://developer.android.com/reference/android/view/MotionEvent.html#findPointerIndex(int)`. Note that this is the ID of the pointer, not its index. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId strokeId` | The `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId` of the stroke to be finished. |

### getFinishedStrokes

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

```
public final @NonNull Map<@NonNull InProgressStrokeId, @NonNull Stroke> getFinishedStrokes()
```

Returns all the finished strokes that are still being rendered by this view, with map iteration order in the z-order that the strokes are being rendered, from back to front. This is the same order that strokes were started with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)`. The IDs of these strokes should be passed to `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#removeFinishedStrokes(kotlin.collections.Set)` when they are handed off to another view.

### getInProgressStrokeCounter

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

```
public final CountingIdlingResource getInProgressStrokeCounter()
```

Allows a test to easily wait until all in-progress strokes are completed and handed off. There is no reason to set this in non-test code.

### getMaskPath

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

```
public final Path getMaskPath()
```

Denote an area of this `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView` where no ink should be visible. A value of `null` indicates that strokes will be visible anywhere they are drawn. This is useful for UI elements that float on top of (in Z order) the drawing surface - without this, a user would be able to draw in-progress ("wet") strokes on top of those UI elements, but then when the stroke is finished, it will appear as a dry stroke underneath of the UI element. If this mask is set to the shape and position of the floating UI element, then the ink will never be rendered in that area, making it appear as if it's being drawn underneath the UI element.

This technique is most convincing when the UI element is opaque. Often there are parts of the UI element that are translucent, such as drop shadows, or anti-aliasing along the edges. The result will look a little different between wet and dry strokes for those cases, but it can be a worthwhile tradeoff compared to the alternative of drawing wet strokes on top of that UI element.

Note that this parameter does not affect the contents of the strokes at all, nor how they appear when drawn in a separate composable after `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesFinishedListener#onStrokesFinished(kotlin.collections.Map)` is called - just how the strokes appear when they are still in progress in this view.

### getMotionEventToViewTransform

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

```
public final @NonNull Matrix getMotionEventToViewTransform()
```

The transform matrix to convert `https://developer.android.com/reference/android/view/MotionEvent.html` coordinates, as passed to `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)`, `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)`, and `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)`, into coordinates of this `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView` for rendering. Defaults to the identity matrix, for the recommended case where `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView` exactly overlays the `https://developer.android.com/reference/android/view/View.html` that has the touch listener from which `https://developer.android.com/reference/android/view/MotionEvent.html` instances are being forwarded.

### getTextureBitmapStore

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

```
public final @NonNull TextureBitmapStore getTextureBitmapStore()
```

`https://developer.android.com/reference/androidx/ink/brush/TextureBitmapStore` used to create the `https://developer.android.com/reference/androidx/ink/rendering/android/canvas/CanvasStrokeRenderer`.

By default, this is a no-op implementation that does not load any brush textures. The factory functions are called when the renderer is initialized, so if this will be changed to something that does load and store texture images, it must be set before the first call to `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` or `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#eagerInit()`.

### hasUnfinishedStrokes

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

```
public final boolean hasUnfinishedStrokes()
```

Returns true if there are any in-progress strokes.

### removeFinishedStrokes

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

```
public final void removeFinishedStrokes(@NonNull Set<@NonNull InProgressStrokeId> strokeIds)
```

Stop this view from rendering the strokes with the given IDs.

This should be called in the same UI thread run loop (HWUI frame) as when the strokes start being rendered elsewhere in the view hierarchy. This means they are saved in a location where they will be picked up in a view's next call to `https://developer.android.com/reference/android/view/View.html#onDraw(android.graphics.Canvas)`, and that view's `https://developer.android.com/reference/android/view/View.html#invalidate()` method has been called. If these two operations are not done within the same UI thread run loop (usually side by side - see example below), then there will be brief rendering errors - either a visual gap where the stroke is not drawn during a frame, or a double draw where the stroke is drawn twice and translucent strokes appear more opaque than they should.

### removeFinishedStrokesListener

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

```
public final void removeFinishedStrokesListener(
    @NonNull InProgressStrokesFinishedListener listener
)
```

Removes a listener that had previously been added with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addFinishedStrokesListener(androidx.ink.authoring.InProgressStrokesFinishedListener)`.

### setInProgressStrokeCounter

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

```
public final void setInProgressStrokeCounter(CountingIdlingResource <set-?>)
```

Allows a test to easily wait until all in-progress strokes are completed and handed off. There is no reason to set this in non-test code.

### setMaskPath

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

```
public final void setMaskPath(Path <set-?>)
```

Denote an area of this `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView` where no ink should be visible. A value of `null` indicates that strokes will be visible anywhere they are drawn. This is useful for UI elements that float on top of (in Z order) the drawing surface - without this, a user would be able to draw in-progress ("wet") strokes on top of those UI elements, but then when the stroke is finished, it will appear as a dry stroke underneath of the UI element. If this mask is set to the shape and position of the floating UI element, then the ink will never be rendered in that area, making it appear as if it's being drawn underneath the UI element.

This technique is most convincing when the UI element is opaque. Often there are parts of the UI element that are translucent, such as drop shadows, or anti-aliasing along the edges. The result will look a little different between wet and dry strokes for those cases, but it can be a worthwhile tradeoff compared to the alternative of drawing wet strokes on top of that UI element.

Note that this parameter does not affect the contents of the strokes at all, nor how they appear when drawn in a separate composable after `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesFinishedListener#onStrokesFinished(kotlin.collections.Map)` is called - just how the strokes appear when they are still in progress in this view.

### setMotionEventToViewTransform

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

```
public final void setMotionEventToViewTransform(@NonNull Matrix <set-?>)
```

The transform matrix to convert `https://developer.android.com/reference/android/view/MotionEvent.html` coordinates, as passed to `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)`, `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)`, and `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)`, into coordinates of this `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView` for rendering. Defaults to the identity matrix, for the recommended case where `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView` exactly overlays the `https://developer.android.com/reference/android/view/View.html` that has the touch listener from which `https://developer.android.com/reference/android/view/MotionEvent.html` instances are being forwarded.

### setTextureBitmapStore

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

```
public final void setTextureBitmapStore(@NonNull TextureBitmapStore value)
```

`https://developer.android.com/reference/androidx/ink/brush/TextureBitmapStore` used to create the `https://developer.android.com/reference/androidx/ink/rendering/android/canvas/CanvasStrokeRenderer`.

By default, this is a no-op implementation that does not load any brush textures. The factory functions are called when the renderer is initialized, so if this will be changed to something that does load and store texture images, it must be set before the first call to `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` or `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#eagerInit()`.

### startStroke

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

```
public final @NonNull InProgressStrokeId startStroke(
    @NonNull StrokeInput input,
    @NonNull Brush brush,
    @NonNull Matrix strokeToViewTransform
)
```

Start building a stroke with the provided `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(androidx.ink.strokes.StrokeInput,androidx.ink.brush.Brush,android.graphics.Matrix)`. This would typically be followed by many calls to `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)`, and the sequence would end with a call to either `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)` or `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelStroke(androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)`.

In most circumstances, the `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(androidx.ink.strokes.StrokeInput,androidx.ink.brush.Brush,android.graphics.Matrix)` overload that accepts a `https://developer.android.com/reference/android/view/MotionEvent.html` is more convenient. However, this overload using a `https://developer.android.com/reference/androidx/ink/strokes/StrokeInput` is available for cases where the input data may not come directly from a `https://developer.android.com/reference/android/view/MotionEvent.html`, such as receiving events over a network connection. Using this function to start a stroke can only be followed by the `https://developer.android.com/reference/androidx/ink/strokes/StrokeInput` variants of `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)` and `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)` for the same stroke.

If there is a way to request unbuffered dispatch from the source of the input data used here, equivalent to `https://developer.android.com/reference/android/view/View.html#requestUnbufferedDispatch(android.view.MotionEvent)` for unbuffered `https://developer.android.com/reference/android/view/MotionEvent.html` data, then be sure to request it for optimal performance.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/strokes/StrokeInput input` | The `https://developer.android.com/reference/androidx/ink/strokes/StrokeInput` that started a stroke. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/brush/Brush brush` | Brush specification for the stroke being started. Note that if stroke coordinate units (the `https://developer.android.com/reference/androidx/ink/strokes/StrokeInput#x()` and `https://developer.android.com/reference/androidx/ink/strokes/StrokeInput#y()` fields of `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(androidx.ink.strokes.StrokeInput,androidx.ink.brush.Brush,android.graphics.Matrix)`) are scaled to be very different in size than screen pixels, then it is recommended to update the value of `https://developer.android.com/reference/androidx/ink/brush/Brush#epsilon()` to reflect that. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Matrix.html strokeToViewTransform` | The `https://developer.android.com/reference/android/graphics/Matrix.html` that converts stroke coordinates as provided in `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(androidx.ink.strokes.StrokeInput,androidx.ink.brush.Brush,android.graphics.Matrix)` into the coordinate space of this `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView` for rendering. |

| Returns |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId` | The `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId` of the stroke being built, later used to identify which stroke is being updated with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)` or ended with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)` or `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelStroke(androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)`. |

### startStroke

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

```
public final @NonNull InProgressStrokeId startStroke(
    @NonNull MotionEvent event,
    int pointerId,
    @NonNull Brush brush,
    @NonNull Matrix motionEventToWorldTransform,
    @NonNull Matrix strokeToWorldTransform
)
```

Start building a stroke using a particular pointer within a `https://developer.android.com/reference/android/view/MotionEvent.html`. This would typically be followed by many calls to `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)`, and the sequence would end with a call to either `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)` or `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelStroke(androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)`.

In most circumstances, prefer to use this function over `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` that accepts a `https://developer.android.com/reference/androidx/ink/strokes/StrokeInput`. Using this function to start a stroke must only be followed by the `https://developer.android.com/reference/android/view/MotionEvent.html` variants of `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)` and `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)` for the same stroke.

For optimum performance, it is strongly recommended to call `https://developer.android.com/reference/android/view/View.html#requestUnbufferedDispatch(android.view.MotionEvent)` using `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` and the `https://developer.android.com/reference/android/view/View.html` that generated `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` alongside calling this function. When requested this way, unbuffered dispatch mode will automatically end when the gesture is complete.

| Parameters |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/view/MotionEvent.html event` | The first `https://developer.android.com/reference/android/view/MotionEvent.html` as part of a Stroke's input data, typically one with a `https://developer.android.com/reference/android/view/MotionEvent.html#getActionMasked()` value of `https://developer.android.com/reference/android/view/MotionEvent.html#ACTION_DOWN` or `https://developer.android.com/reference/android/view/MotionEvent.html#ACTION_POINTER_DOWN`, but not restricted to those action types. |
| `int pointerId` | The identifier of the pointer within `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` to be used for inking, as determined by `https://developer.android.com/reference/android/view/MotionEvent.html#getPointerId(int)` and used as an input to `https://developer.android.com/reference/android/view/MotionEvent.html#findPointerIndex(int)`. Note that this is the ID of the pointer, not its index. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/brush/Brush brush` | Brush specification for the stroke being started. Note that the overall scaling factor of `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` and `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` combined should be related to the value of `https://developer.android.com/reference/androidx/ink/brush/Brush#epsilon()` - in general, the larger the combined `motionEventToStrokeTransform` scaling factor is, the smaller on screen the stroke units are, so `https://developer.android.com/reference/androidx/ink/brush/Brush#epsilon()` should be a larger quantity of stroke units to maintain a similar screen size. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Matrix.html motionEventToWorldTransform` | The matrix that transforms `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` coordinates into the client app's "world" coordinates, which typically is defined by how a client app's document is panned/zoomed/rotated. This defaults to the identity matrix, in which case the world coordinate space is the same as the `https://developer.android.com/reference/android/view/MotionEvent.html` coordinates, but the caller should pass in their own value reflecting a coordinate system that is independent of the device's pixel density (e.g. scaled by 1 / `https://developer.android.com/reference/android/util/DisplayMetrics.html#density`) and any pan/zoom/rotate gestures that have been applied to the "camera" which portrays the "world" on the device screen. This matrix must be invertible. |
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/android/graphics/Matrix.html strokeToWorldTransform` | Allows an object-specific (stroke-specific) coordinate space to be defined in relation to the caller's "world" coordinate space. This defaults to the identity matrix, which is typical for many use cases at the time of stroke construction. In typical use cases, stroke coordinates and world coordinates may start to differ from one another after stroke creation as a particular stroke is manipulated within the world, e.g. it may be moved, scaled, or rotated relative to other content within an app's document. This matrix must be invertible. |

| Returns |
|---|---|
| `@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId` | The `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokeId` of the stroke being built, later used to identify which stroke is being updated with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)` or ended with `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)` or `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelStroke(androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)`. Callers that assume strokes map one-to-one with pointers in a gesture (as is typical) can skip storing this return value and use the overrides of `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#addToStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)`, `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#finishStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.authoring.InProgressStrokeId)`, and `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#cancelStroke(androidx.ink.authoring.InProgressStrokeId,android.view.MotionEvent)` that just take a `https://developer.android.com/reference/android/view/MotionEvent.html` and a `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)`. |

| Throws |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-illegal-argument-exception/index.html` | if `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` or `https://developer.android.com/reference/androidx/ink/authoring/InProgressStrokesView#startStroke(android.view.MotionEvent,kotlin.Int,androidx.ink.brush.Brush,android.graphics.Matrix,android.graphics.Matrix)` is not invertible. |

## Protected methods

### onAttachedToWindow

```
protected void onAttachedToWindow()
```

### onDetachedFromWindow

```
protected void onDetachedFromWindow()
```