View


public class View
extends Object implements AccessibilityEventSource, Drawable.Callback, KeyEvent.Callback

java.lang.Object
   ↳ android.view.View


This class represents the basic building block for user interface components. A View occupies a rectangular area on the screen and is responsible for drawing and event handling. View is the base class for widgets, which are used to create interactive UI components (buttons, text fields, etc.). The ViewGroup subclass is the base class for layouts, which are invisible containers that hold other Views (or other ViewGroups) and define their layout properties.

Developer Guides

For information about using this class to develop your application's user interface, read the User Interface developer guide.

Using Views

All of the views in a window are arranged in a single tree. You can add views either from code or by specifying a tree of views in one or more XML layout files. There are many specialized subclasses of views that act as controls or are capable of displaying text, images, or other content.

Once you have created a tree of views, there are typically a few types of common operations you may wish to perform:

  • Set properties: for example setting the text of a TextView. The available properties and the methods that set them will vary among the different subclasses of views. Note that properties that are known at build time can be set in the XML layout files.
  • Set focus: The framework will handle moving focus in response to user input. To force focus to a specific view, call requestFocus().
  • Set up listeners: Views allow clients to set listeners that will be notified when something interesting happens to the view. For example, all views will let you set a listener to be notified when the view gains or loses focus. You can register such a listener using setOnFocusChangeListener(android.view.View.OnFocusChangeListener). Other view subclasses offer more specialized listeners. For example, a Button exposes a listener to notify clients when the button is clicked.
  • Set visibility: You can hide or show views using setVisibility(int).

Note: The Android framework is responsible for measuring, laying out and drawing views. You should not call methods that perform these actions on views yourself unless you are actually implementing a ViewGroup.

Implementing a Custom View

To implement a custom view, you will usually begin by providing overrides for some of the standard methods that the framework calls on all views. You do not need to override all of these methods. In fact, you can start by just overriding onDraw(android.graphics.Canvas).

Category Methods Description
Creation Constructors There is a form of the constructor that are called when the view is created from code and a form that is called when the view is inflated from a layout file. The second form should parse and apply any attributes defined in the layout file.
onFinishInflate() Called after a view and all of its children has been inflated from XML.
Layout onMeasure(int, int) Called to determine the size requirements for this view and all of its children.
onLayout(boolean, int, int, int, int) Called when this view should assign a size and position to all of its children.
onSizeChanged(int, int, int, int) Called when the size of this view has changed.
Drawing onDraw(android.graphics.Canvas) Called when the view should render its content.
Event processing onKeyDown(int, android.view.KeyEvent) Called when a new hardware key event occurs.
onKeyUp(int, android.view.KeyEvent) Called when a hardware key up event occurs.
onTrackballEvent(android.view.MotionEvent) Called when a trackball motion event occurs.
onTouchEvent(android.view.MotionEvent) Called when a motion event occurs with pointers down on the view.
onGenericMotionEvent(android.view.MotionEvent) Called when a generic motion event occurs.
onHoverEvent(android.view.MotionEvent) Called when a hover motion event occurs.
Focus onFocusChanged(boolean, int, android.graphics.Rect) Called when the view gains or loses focus.
onWindowFocusChanged(boolean) Called when the window containing the view gains or loses focus.
Attaching onAttachedToWindow() Called when the view is attached to a window.
onDetachedFromWindow() Called when the view is detached from its window.
onWindowVisibilityChanged(int) Called when the visibility of the window containing the view has changed.

IDs

Views may have an integer id associated with them. These ids are typically assigned in the layout XML files, and are used to find specific views within the view tree. A common pattern is to:
  • Define a Button in the layout file and assign it a unique ID.
     <Button
         android:id="@+id/my_button"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="@string/my_button_text"/>
     
  • From the onCreate method of an Activity, find the Button
          Button myButton = findViewById(R.id.my_button);
     

View IDs need not be unique throughout the tree, but it is good practice to ensure that they are at least unique within the part of the tree you are searching.

Position

The geometry of a view is that of a rectangle. A view has a location, expressed as a pair of left and top coordinates, and two dimensions, expressed as a width and a height. The unit for location and dimensions is the pixel.

It is possible to retrieve the location of a view by invoking the methods getLeft() and getTop(). The former returns the left, or X, coordinate of the rectangle representing the view. The latter returns the top, or Y, coordinate of the rectangle representing the view. These methods both return the location of the view relative to its parent. For instance, when getLeft() returns 20, that means the view is located 20 pixels to the right of the left edge of its direct parent.

In addition, several convenience methods are offered to avoid unnecessary computations, namely getRight() and getBottom(). These methods return the coordinates of the right and bottom edges of the rectangle representing the view. For instance, calling getRight() is similar to the following computation: getLeft() + getWidth() (see Size for more information about the width.)

Size, padding and margins

The size of a view is expressed with a width and a height. A view actually possess two pairs of width and height values.

The first pair is known as measured width and measured height. These dimensions define how big a view wants to be within its parent (see Layout for more details.) The measured dimensions can be obtained by calling getMeasuredWidth() and getMeasuredHeight().

The second pair is simply known as width and height, or sometimes drawing width and drawing height. These dimensions define the actual size of the view on screen, at drawing time and after layout. These values may, but do not have to, be different from the measured width and height. The width and height can be obtained by calling getWidth() and getHeight().

To measure its dimensions, a view takes into account its padding. The padding is expressed in pixels for the left, top, right and bottom parts of the view. Padding can be used to offset the content of the view by a specific amount of pixels. For instance, a left padding of 2 will push the view's content by 2 pixels to the right of the left edge. Padding can be set using the setPadding(int, int, int, int) or setPaddingRelative(int, int, int, int) method and queried by calling getPaddingLeft(), getPaddingTop(), getPaddingRight(), getPaddingBottom(), getPaddingStart(), getPaddingEnd().

Even though a view can define a padding, it does not provide any support for margins. However, view groups provide such a support. Refer to ViewGroup and ViewGroup.MarginLayoutParams for further information.

Layout

Layout is a two pass process: a measure pass and a layout pass. The measuring pass is implemented in measure(int, int) and is a top-down traversal of the view tree. Each view pushes dimension specifications down the tree during the recursion. At the end of the measure pass, every view has stored its measurements. The second pass happens in layout(int, int, int, int) and is also top-down. During this pass each parent is responsible for positioning all of its children using the sizes computed in the measure pass.

When a view's measure() method returns, its getMeasuredWidth() and getMeasuredHeight() values must be set, along with those for all of that view's descendants. A view's measured width and measured height values must respect the constraints imposed by the view's parents. This guarantees that at the end of the measure pass, all parents accept all of their children's measurements. A parent view may call measure() more than once on its children. For example, the parent may measure each child once with unspecified dimensions to find out how big they want to be, then call measure() on them again with actual numbers if the sum of all the children's unconstrained sizes is too big or too small.

The measure pass uses two classes to communicate dimensions. The MeasureSpec class is used by views to tell their parents how they want to be measured and positioned. The base LayoutParams class just describes how big the view wants to be for both width and height. For each dimension, it can specify one of:

  • an exact number
  • MATCH_PARENT, which means the view wants to be as big as its parent (minus padding)
  • WRAP_CONTENT, which means that the view wants to be just big enough to enclose its content (plus padding).
There are subclasses of LayoutParams for different subclasses of ViewGroup. For example, AbsoluteLayout has its own subclass of LayoutParams which adds an X and Y value.

MeasureSpecs are used to push requirements down the tree from parent to child. A MeasureSpec can be in one of three modes:

  • UNSPECIFIED: This is used by a parent to determine the desired dimension of a child view. For example, a LinearLayout may call measure() on its child with the height set to UNSPECIFIED and a width of EXACTLY 240 to find out how tall the child view wants to be given a width of 240 pixels.
  • EXACTLY: This is used by the parent to impose an exact size on the child. The child must use this size, and guarantee that all of its descendants will fit within this size.
  • AT_MOST: This is used by the parent to impose a maximum size on the child. The child must guarantee that it and all of its descendants will fit within this size.

To initiate a layout, call requestLayout(). This method is typically called by a view on itself when it believes that it can no longer fit within its current bounds.

Drawing

Drawing is handled by walking the tree and recording the drawing commands of any View that needs to update. After this, the drawing commands of the entire tree are issued to screen, clipped to the newly damaged area.

The tree is largely recorded and drawn in order, with parents drawn before (i.e., behind) their children, with siblings drawn in the order they appear in the tree. If you set a background drawable for a View, then the View will draw it before calling back to its onDraw() method. The child drawing order can be overridden with custom child drawing order in a ViewGroup, and with setZ(float) custom Z values} set on Views.

To force a view to draw, call invalidate().

Event Handling and Threading

The basic cycle of a view is as follows:

  1. An event comes in and is dispatched to the appropriate view. The view handles the event and notifies any listeners.
  2. If in the course of processing the event, the view's bounds may need to be changed, the view will call requestLayout().
  3. Similarly, if in the course of processing the event the view's appearance may need to be changed, the view will call invalidate().
  4. If either requestLayout() or invalidate() were called, the framework will take care of measuring, laying out, and drawing the tree as appropriate.

Note: The entire view tree is single threaded. You must always be on the UI thread when calling any method on any view. If you are doing work on other threads and want to update the state of a view from that thread, you should use a Handler.

Focus Handling

The framework will handle routine focus movement in response to user input. This includes changing the focus as views are removed or hidden, or as new views become available. Views indicate their willingness to take focus through the isFocusable() method. To change whether a view can take focus, call setFocusable(boolean). When in touch mode (see notes below) views indicate whether they still would like focus via isFocusableInTouchMode() and can change this via setFocusableInTouchMode(boolean).

Focus movement is based on an algorithm which finds the nearest neighbor in a given direction. In rare cases, the default algorithm may not match the intended behavior of the developer. In these situations, you can provide explicit overrides by using these XML attributes in the layout file:

 nextFocusDown
 nextFocusLeft
 nextFocusRight
 nextFocusUp
 

To get a particular view to take focus, call requestFocus().

Touch Mode

When a user is navigating a user interface via directional keys such as a D-pad, it is necessary to give focus to actionable items such as buttons so the user can see what will take input. If the device has touch capabilities, however, and the user begins interacting with the interface by touching it, it is no longer necessary to always highlight, or give focus to, a particular view. This motivates a mode for interaction named 'touch mode'.

For a touch capable device, once the user touches the screen, the device will enter touch mode. From this point onward, only views for which isFocusableInTouchMode() is true will be focusable, such as text editing widgets. Other views that are touchable, like buttons, will not take focus when touched; they will only fire the on click listeners.

Any time a user hits a directional key, such as a D-pad direction, the view device will exit touch mode, and find a view to take focus, so that the user may resume interacting with the user interface without touching the screen again.

The touch mode state is maintained across Activitys. Call isInTouchMode() to see whether the device is currently in touch mode.

Scrolling

The framework provides basic support for views that wish to internally scroll their content. This includes keeping track of the X and Y scroll offset as well as mechanisms for drawing scrollbars. See scrollBy(int, int), scrollTo(int, int), and awakenScrollBars() for more details.

Tags

Unlike IDs, tags are not used to identify views. Tags are essentially an extra piece of information that can be associated with a view. They are most often used as a convenience to store data related to views in the views themselves rather than by putting them in a separate structure.

Tags may be specified with character sequence values in layout XML as either a single tag using the android:tag attribute or multiple tags using the <tag> child element:

     <View ...
           android:tag="@string/mytag_value" />
     <View ...>
         <tag android:id="@+id/mytag"
              android:value="@string/mytag_value" />
     </View>
 

Tags may also be specified with arbitrary objects from code using setTag(java.lang.Object) or setTag(int, java.lang.Object).

Themes

By default, Views are created using the theme of the Context object supplied to their constructor; however, a different theme may be specified by using the android:theme attribute in layout XML or by passing a ContextThemeWrapper to the constructor from code.

When the android:theme attribute is used in XML, the specified theme is applied on top of the inflation context's theme (see LayoutInflater) and used for the view itself as well as any child elements.

In the following example, both views will be created using the Material dark color scheme; however, because an overlay theme is used which only defines a subset of attributes, the value of android:colorAccent defined on the inflation context's theme (e.g. the Activity theme) will be preserved.

     <LinearLayout
             ...
             android:theme="@android:theme/ThemeOverlay.Material.Dark">
         <View ...>
     </LinearLayout>
 

Properties

The View class exposes an ALPHA property, as well as several transform-related properties, such as TRANSLATION_X and TRANSLATION_Y. These properties are available both in the Property form as well as in similarly-named setter/getter methods (such as setAlpha(float) for ALPHA). These properties can be used to set persistent state associated with these rendering-related properties on the view. The properties and methods can also be used in conjunction with Animator-based animations, described more in the Animation section.

Animation

Starting with Android 3.0, the preferred way of animating views is to use the android.animation package APIs. These Animator-based classes change actual properties of the View object, such as alpha and translationX. This behavior is contrasted to that of the pre-3.0 Animation-based classes, which instead animate only how the view is drawn on the display. In particular, the ViewPropertyAnimator class makes animating these View properties particularly easy and efficient.

Alternatively, you can use the pre-3.0 animation classes to animate how Views are rendered. You can attach an Animation object to a view using setAnimation(android.view.animation.Animation) or startAnimation(android.view.animation.Animation). The animation can alter the scale, rotation, translation and alpha of a view over time. If the animation is attached to a view that has children, the animation will affect the entire subtree rooted by that node. When an animation is started, the framework will take care of redrawing the appropriate views until the animation completes.

Security

Sometimes it is essential that an application be able to verify that an action is being performed with the full knowledge and consent of the user, such as granting a permission request, making a purchase or clicking on an advertisement. Unfortunately, a malicious application could try to spoof the user into performing these actions, unaware, by concealing the intended purpose of the view. As a remedy, the framework offers a touch filtering mechanism that can be used to improve the security of views that provide access to sensitive functionality.

To enable touch filtering, call setFilterTouchesWhenObscured(boolean) or set the android:filterTouchesWhenObscured layout attribute to true. When enabled, the framework will discard touches that are received whenever the view's window is obscured by another visible window at the touched location. As a result, the view will not receive touches whenever the touch passed through a toast, dialog or other window that appears above the view's window.

For more fine-grained control over security, consider overriding the onFilterTouchEventForSecurity(android.view.MotionEvent) method to implement your own security policy. See also MotionEvent.FLAG_WINDOW_IS_OBSCURED.

See also:

Summary

Nested classes

class View.AccessibilityDelegate

This class represents a delegate that can be registered in a View to enhance accessibility support via composition rather via inheritance. 

class View.BaseSavedState

Base class for derived classes that want to save and restore their own state in View.onSaveInstanceState()

class View.DragShadowBuilder

Creates an image that the system displays during the drag and drop operation. 

class View.MeasureSpec

A MeasureSpec encapsulates the layout requirements passed from parent to child. 

interface View.OnApplyWindowInsetsListener

Listener for applying window insets on a view in a custom way. 

interface View.OnAttachStateChangeListener

Interface definition for a callback to be invoked when this view is attached or detached from its window. 

interface View.OnCapturedPointerListener

Interface definition for a callback to be invoked when a captured pointer event is being dispatched this view. 

interface View.OnClickListener

Interface definition for a callback to be invoked when a view is clicked. 

interface View.OnContextClickListener

Interface definition for a callback to be invoked when a view is context clicked. 

interface View.OnCreateContextMenuListener

Interface definition for a callback to be invoked when the context menu for this view is being built. 

interface View.OnDragListener

Interface definition for a listener that's invoked when a drag event is dispatched to this view. 

interface View.OnFocusChangeListener

Interface definition for a callback to be invoked when the focus state of a view changed. 

interface View.OnGenericMotionListener

Interface definition for a callback to be invoked when a generic motion event is dispatched to this view. 

interface View.OnHoverListener

Interface definition for a callback to be invoked when a hover event is dispatched to this view. 

interface View.OnKeyListener

Interface definition for a callback to be invoked when a hardware key event is dispatched to this view. 

interface View.OnLayoutChangeListener

Interface definition for a callback to be invoked when the layout bounds of a view changes due to layout processing. 

interface View.OnLongClickListener

Interface definition for a callback to be invoked when a view has been clicked and held. 

interface View.OnScrollChangeListener

Interface definition for a callback to be invoked when the scroll X or Y positions of a view change. 

interface View.OnSystemUiVisibilityChangeListener

This interface was deprecated in API level 30. Use WindowInsets.isVisible(int) to find out about system bar visibilities by setting a OnApplyWindowInsetsListener on this view. 

interface View.OnTouchListener

Interface definition for a callback to be invoked when a touch event is dispatched to this view. 

interface View.OnUnhandledKeyEventListener

Interface definition for a callback to be invoked when a hardware key event hasn't been handled by the view hierarchy. 

XML attributes

android:accessibilityHeading Whether or not this view is a heading for accessibility purposes. 
android:accessibilityLiveRegion Indicates to accessibility services whether the user should be notified when this view changes. 
android:accessibilityPaneTitle The title this view should present to accessibility as a pane title. 
android:accessibilityTraversalAfter Sets the id of a view that screen readers are requested to visit before this view. 
android:accessibilityTraversalBefore Sets the id of a view that screen readers are requested to visit after this view. 
android:allowClickWhenDisabled Whether or not allow clicks on disabled view. 
android:alpha alpha property of the view, as a value between 0 (completely transparent) and 1 (completely opaque). 
android:autoHandwritingEnabled

Whether or not the auto handwriting initiation is enabled in this View. 

android:autofillHints Describes the content of a view so that a autofill service can fill in the appropriate data. 
android:autofilledHighlight Drawable to be drawn over the view to mark it as autofilled

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name". 

android:background A drawable to use as the background. 
android:backgroundTint Tint to apply to the background. 
android:backgroundTintMode Blending mode used to apply the background tint. 
android:clickable Defines whether this view reacts to click events. 
android:clipToOutline

Whether the View's Outline should be used to clip the contents of the View. 

android:contentDescription Defines text that briefly describes content of the view. 
android:contextClickable Defines whether this view reacts to context click events. 
android:defaultFocusHighlightEnabled Whether this View should use a default focus highlight when it gets focused but doesn't have R.attr.state_focused defined in its background. 
android:drawingCacheQuality Defines the quality of translucent drawing caches. 
android:duplicateParentState When this attribute is set to true, the view gets its drawable state (focused, pressed, etc.) from its direct parent rather than from itself. 
android:elevation base z depth of the view. 
android:fadeScrollbars Defines whether to fade out scrollbars when they are not in use. 
android:fadingEdgeLength Defines the length of the fading edges. 
android:filterTouchesWhenObscured Specifies whether to filter touches when the view's window is obscured by another visible window. 
android:fitsSystemWindows Boolean internal attribute to adjust view layout based on system windows such as the status bar. 
android:focusable Controls whether a view can take focus. 
android:focusableInTouchMode Boolean that controls whether a view can take focus while in touch mode. 
android:focusedByDefault Whether this view is a default-focus view. 
android:forceHasOverlappingRendering Whether this view has elements that may overlap when drawn. 
android:foreground Defines the drawable to draw over the content. 
android:foregroundGravity Defines the gravity to apply to the foreground drawable. 
android:foregroundTint Tint to apply to the foreground. 
android:foregroundTintMode Blending mode used to apply the foreground tint. 
android:hapticFeedbackEnabled Boolean that controls whether a view should have haptic feedback enabled for events such as long presses. 
android:id Supply an identifier name for this view, to later retrieve it with View.findViewById() or Activity.findViewById()
android:importantForAccessibility Describes whether or not this view is important for accessibility. 
android:importantForAutofill Hints the Android System whether the view node associated with this View should be included in a view structure used for autofill purposes. 
android:importantForContentCapture Hints the Android System whether the view node associated with this View should be use for content capture purposes. 
android:isCredential Boolean that hints the Android System that the view is credential and associated with CredentialManager

May be a boolean value, such as "true" or "false". 

android:isScrollContainer Set this if the view will serve as a scrolling container, meaning that it can be resized to shrink its overall window so that there will be space for an input method. 
android:keepScreenOn Controls whether the view's window should keep the screen on while visible. 
android:keyboardNavigationCluster Whether this view is a root of a keyboard navigation cluster. 
android:layerType Specifies the type of layer backing this view. 
android:layoutDirection Defines the direction of layout drawing. 
android:longClickable Defines whether this view reacts to long click events. 
android:minHeight Defines the minimum height of the view. 
android:minWidth Defines the minimum width of the view. 
android:nextClusterForward Defines the next keyboard navigation cluster. 
android:nextFocusDown Defines the next view to give focus to when the next focus is View.FOCUS_DOWN If the reference refers to a view that does not exist or is part of a hierarchy that is invisible, a RuntimeException will result when the reference is accessed. 
android:nextFocusForward Defines the next view to give focus to when the next focus is View.FOCUS_FORWARD If the reference refers to a view that does not exist or is part of a hierarchy that is invisible, a RuntimeException will result when the reference is accessed. 
android:nextFocusLeft Defines the next view to give focus to when the next focus is View.FOCUS_LEFT
android:nextFocusRight Defines the next view to give focus to when the next focus is View.FOCUS_RIGHT If the reference refers to a view that does not exist or is part of a hierarchy that is invisible, a RuntimeException will result when the reference is accessed. 
android:nextFocusUp Defines the next view to give focus to when the next focus is View.FOCUS_UP If the reference refers to a view that does not exist or is part of a hierarchy that is invisible, a RuntimeException will result when the reference is accessed. 
android:onClick Name of the method in this View's context to invoke when the view is clicked. 
android:outlineAmbientShadowColor Sets the color of the ambient shadow that is drawn when the view has a positive Z or elevation value. 
android:outlineSpotShadowColor Sets the color of the spot shadow that is drawn when the view has a positive Z or elevation value. 
android:padding Sets the padding, in pixels, of all four edges. 
android:paddingBottom Sets the padding, in pixels, of the bottom edge; see R.attr.padding
android:paddingEnd Sets the padding, in pixels, of the end edge; see R.attr.padding
android:paddingHorizontal Sets the padding, in pixels, of the left and right edges; see R.attr.padding
android:paddingLeft Sets the padding, in pixels, of the left edge; see R.attr.padding
android:paddingRight Sets the padding, in pixels, of the right edge; see R.attr.padding
android:paddingStart Sets the padding, in pixels, of the start edge; see R.attr.padding
android:paddingTop Sets the padding, in pixels, of the top edge; see R.attr.padding
android:paddingVertical Sets the padding, in pixels, of the top and bottom edges; see R.attr.padding
android:preferKeepClear

Sets a preference to keep the bounds of this view clear from floating windows above this view's window. 

android:requiresFadingEdge Defines which edges should be faded on scrolling. 
android:rotation rotation of the view, in degrees. 
android:rotationX rotation of the view around the x axis, in degrees. 
android:rotationY rotation of the view around the y axis, in degrees. 
android:saveEnabled If false, no state will be saved for this view when it is being frozen. 
android:scaleX scale of the view in the x direction. 
android:scaleY scale of the view in the y direction. 
android:screenReaderFocusable Whether this view should be treated as a focusable unit by screen reader accessibility tools. 
android:scrollIndicators Defines which scroll indicators should be displayed when the view can be scrolled. 
android:scrollX The initial horizontal scroll offset, in pixels. 
android:scrollY The initial vertical scroll offset, in pixels. 
android:scrollbarAlwaysDrawHorizontalTrack Defines whether the horizontal scrollbar track should always be drawn. 
android:scrollbarAlwaysDrawVerticalTrack Defines whether the vertical scrollbar track should always be drawn. 
android:scrollbarDefaultDelayBeforeFade Defines the delay in milliseconds that a scrollbar waits before fade out. 
android:scrollbarFadeDuration Defines the delay in milliseconds that a scrollbar takes to fade out. 
android:scrollbarSize Sets the width of vertical scrollbars and height of horizontal scrollbars. 
android:scrollbarStyle Controls the scrollbar style and position. 
android:scrollbarThumbHorizontal Defines the horizontal scrollbar thumb drawable. 
android:scrollbarThumbVertical Defines the vertical scrollbar thumb drawable. 
android:scrollbarTrackHorizontal Defines the horizontal scrollbar track drawable. 
android:scrollbarTrackVertical Defines the vertical scrollbar track drawable. 
android:scrollbars Defines which scrollbars should be displayed on scrolling or not. 
android:soundEffectsEnabled Boolean that controls whether a view should have sound effects enabled for events such as clicking and touching. 
android:stateListAnimator Sets the state-based animator for the View. 
android:supplementalDescription Provides brief supplemental information for the view, such as the purpose of the view when that purpose is not conveyed within its textual representation. 
android:tag Supply a tag for this view containing a String, to be retrieved later with View.getTag() or searched for with View.findViewWithTag()
android:textAlignment Defines the alignment of the text. 
android:textDirection Defines the direction of the text. 
android:theme Specifies a theme override for a view. 
android:tooltipText Defines text displayed in a small popup window on hover or long press. 
android:transformPivotX x location of the pivot point around which the view will rotate and scale. 
android:transformPivotY y location of the pivot point around which the view will rotate and scale. 
android:transitionName Names a View such that it can be identified for Transitions. 
android:translationX translation in x of the view. 
android:translationY translation in y of the view. 
android:translationZ translation in z of the view. 
android:visibility Controls the initial visibility of the view. 

Constants

int ACCESSIBILITY_DATA_SENSITIVE_AUTO

Automatically determine whether the view should only allow interactions from AccessibilityServices with the AccessibilityServiceInfo.isAccessibilityTool() property set to true.

int ACCESSIBILITY_DATA_SENSITIVE_NO

Allow interactions from all AccessibilityServices, regardless of their AccessibilityServiceInfo.isAccessibilityTool() property.

int ACCESSIBILITY_DATA_SENSITIVE_YES

Only allow interactions from AccessibilityServices with the AccessibilityServiceInfo.isAccessibilityTool() property set to true.

int ACCESSIBILITY_LIVE_REGION_ASSERTIVE

Live region mode specifying that accessibility services should immediately notify users of changes to this view.

int ACCESSIBILITY_LIVE_REGION_NONE

Live region mode specifying that accessibility services should not automatically announce changes to this view.

int ACCESSIBILITY_LIVE_REGION_POLITE

Live region mode specifying that accessibility services should notify users of changes to this view.

int AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS

Flag requesting you to add views that are marked as not important for autofill (see setImportantForAutofill(int)) to a ViewStructure.

String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE

Hint indicating that this view can be autofilled with a credit card expiration date.

String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY

Hint indicating that this view can be autofilled with a credit card expiration day.

String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH

Hint indicating that this view can be autofilled with a credit card expiration month.

String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR

Hint indicating that this view can be autofilled with a credit card expiration year.

String AUTOFILL_HINT_CREDIT_CARD_NUMBER

Hint indicating that this view can be autofilled with a credit card number.

String AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE

Hint indicating that this view can be autofilled with a credit card security code.

String AUTOFILL_HINT_EMAIL_ADDRESS

Hint indicating that this view can be autofilled with an email address.

String AUTOFILL_HINT_NAME

Hint indicating that this view can be autofilled with a user's real name.

String AUTOFILL_HINT_PASSWORD

Hint indicating that this view can be autofilled with a password.

String AUTOFILL_HINT_PHONE

Hint indicating that this view can be autofilled with a phone number.

String AUTOFILL_HINT_POSTAL_ADDRESS

Hint indicating that this view can be autofilled with a postal address.

String AUTOFILL_HINT_POSTAL_CODE

Hint indicating that this view can be autofilled with a postal code.

String AUTOFILL_HINT_USERNAME

Hint indicating that this view can be autofilled with a username.

int AUTOFILL_TYPE_DATE

Autofill type for a field that contains a date, which is represented by a long representing the number of milliseconds since the standard base time known as "the epoch", namely January 1, 1970, 00:00:00 GMT (see Date.getTime().

int AUTOFILL_TYPE_LIST

Autofill type for a selection list field, which is filled by an int representing the element index inside the list (starting at 0).

int AUTOFILL_TYPE_NONE

Autofill type for views that cannot be autofilled.

int AUTOFILL_TYPE_TEXT

Autofill type for a text field, which is filled by a CharSequence.

int AUTOFILL_TYPE_TOGGLE

Autofill type for a togglable field, which is filled by a boolean.

int CONTENT_SENSITIVITY_AUTO

Content sensitivity is determined by the framework.

int CONTENT_SENSITIVITY_NOT_SENSITIVE

The view doesn't display sensitive content.

int CONTENT_SENSITIVITY_SENSITIVE

The view displays sensitive content.

int DRAG_FLAG_ACCESSIBILITY_ACTION

Flag indicating that the drag was initiated with AccessibilityNodeInfo.AccessibilityAction.ACTION_DRAG_START.

int DRAG_FLAG_GLOBAL

Flag indicating that a drag can cross window boundaries.

int DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION

When this flag is used with DRAG_FLAG_GLOBAL_URI_READ and/or DRAG_FLAG_GLOBAL_URI_WRITE, the URI permission grant can be persisted across device reboots until explicitly revoked with Context.revokeUriPermission(Uri, int) Context.revokeUriPermission}.

int DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION

When this flag is used with DRAG_FLAG_GLOBAL_URI_READ and/or DRAG_FLAG_GLOBAL_URI_WRITE, the URI permission grant applies to any URI that is a prefix match against the original granted URI.

int DRAG_FLAG_GLOBAL_SAME_APPLICATION

Flag indicating that a drag can cross window boundaries (within the same application).

int DRAG_FLAG_GLOBAL_URI_READ

When this flag is used with DRAG_FLAG_GLOBAL, the drag recipient will be able to request read access to the content URI(s) contained in the ClipData object.

int DRAG_FLAG_GLOBAL_URI_WRITE

When this flag is used with DRAG_FLAG_GLOBAL, the drag recipient will be able to request write access to the content URI(s) contained in the ClipData object.

int DRAG_FLAG_HIDE_CALLING_TASK_ON_DRAG_START

Flag indicating that this drag will result in the caller activity's task to be hidden for the duration of the drag, which means that the source activity will not receive drag events for the current drag gesture.

int DRAG_FLAG_OPAQUE

Flag indicating that the drag shadow will be opaque.

int DRAG_FLAG_START_INTENT_SENDER_ON_UNHANDLED_DRAG

Flag indicating that an unhandled drag should be delegated to the system to be started if no visible window wishes to handle the drop.

int DRAWING_CACHE_QUALITY_AUTO

This constant was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

int DRAWING_CACHE_QUALITY_HIGH

This constant was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

int DRAWING_CACHE_QUALITY_LOW

This constant was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

int FIND_VIEWS_WITH_CONTENT_DESCRIPTION

Find find views that contain the specified content description.

int FIND_VIEWS_WITH_TEXT

Find views that render the specified text.

int FOCUSABLE

This view wants keystrokes.

int FOCUSABLES_ALL

View flag indicating whether addFocusables(java.util.ArrayList, int, int) should add all focusable Views regardless if they are focusable in touch mode.

int FOCUSABLES_TOUCH_MODE

View flag indicating whether addFocusables(java.util.ArrayList, int, int) should add only Views focusable in touch mode.

int FOCUSABLE_AUTO

This view determines focusability automatically.

int FOCUS_BACKWARD

Use with focusSearch(int).

int FOCUS_DOWN

Use with focusSearch(int).

int FOCUS_FORWARD

Use with focusSearch(int).

int FOCUS_LEFT

Use with focusSearch(int).

int FOCUS_RIGHT

Use with focusSearch(int).

int FOCUS_UP

Use with focusSearch(int).

int GONE

This view is invisible, and it doesn't take any space for layout purposes.

int HAPTIC_FEEDBACK_ENABLED

View flag indicating whether this view should have haptic feedback enabled for events such as long presses.

int IMPORTANT_FOR_ACCESSIBILITY_AUTO

Automatically determine whether a view is important for accessibility.

int IMPORTANT_FOR_ACCESSIBILITY_NO

The view is not important for accessibility.

int IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS

The view is not important for accessibility, nor are any of its descendant views.

int IMPORTANT_FOR_ACCESSIBILITY_YES

The view is important for accessibility.

int IMPORTANT_FOR_AUTOFILL_AUTO

Automatically determine whether a view is important for autofill.

int IMPORTANT_FOR_AUTOFILL_NO

The view is not important for autofill, but its children (if any) will be traversed.

int IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS

The view is not important for autofill, and its children (if any) will not be traversed.

int IMPORTANT_FOR_AUTOFILL_YES

The view is important for autofill, and its children (if any) will be traversed.

int IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS

The view is important for autofill, but its children (if any) will not be traversed.

int IMPORTANT_FOR_CONTENT_CAPTURE_AUTO

Automatically determine whether a view is important for content capture.

int IMPORTANT_FOR_CONTENT_CAPTURE_NO

The view is not important for content capture, but its children (if any) will be traversed.

int IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS

The view is not important for content capture, and its children (if any) will not be traversed.

int IMPORTANT_FOR_CONTENT_CAPTURE_YES

The view is important for content capture, and its children (if any) will be traversed.

int IMPORTANT_FOR_CONTENT_CAPTURE_YES_EXCLUDE_DESCENDANTS

The view is important for content capture, but its children (if any) will not be traversed.

int INVISIBLE

This view is invisible, but it still takes up space for layout purposes.

int KEEP_SCREEN_ON

View flag indicating that the screen should remain on while the window containing this view is visible to the user.

int LAYER_TYPE_HARDWARE

Indicates that the view has a hardware layer.

int LAYER_TYPE_NONE

Indicates that the view does not have a layer.

int LAYER_TYPE_SOFTWARE

Indicates that the view has a software layer.

int LAYOUT_DIRECTION_INHERIT

Horizontal layout direction of this view is inherited from its parent.

int LAYOUT_DIRECTION_LOCALE

Horizontal layout direction of this view is from deduced from the default language script for the locale.

int LAYOUT_DIRECTION_LTR

Horizontal layout direction of this view is from Left to Right.

int LAYOUT_DIRECTION_RTL

Horizontal layout direction of this view is from Right to Left.

int MEASURED_HEIGHT_STATE_SHIFT

Bit shift of MEASURED_STATE_MASK to get to the height bits for functions that combine both width and height into a single int, such as getMeasuredState() and the childState argument of resolveSizeAndState(int, int, int).

int MEASURED_SIZE_MASK

Bits of getMeasuredWidthAndState() and getMeasuredWidthAndState() that provide the actual measured size.

int MEASURED_STATE_MASK

Bits of getMeasuredWidthAndState() and getMeasuredWidthAndState() that provide the additional state bits.

int MEASURED_STATE_TOO_SMALL

Bit of getMeasuredWidthAndState() and getMeasuredWidthAndState() that indicates the measured size is smaller that the space the view would like to have.

int NOT_FOCUSABLE

This view does not want keystrokes.

int NO_ID

Used to mark a View that has no ID.

int OVER_SCROLL_ALWAYS

Always allow a user to over-scroll this view, provided it is a view that can scroll.

int OVER_SCROLL_IF_CONTENT_SCROLLS

Allow a user to over-scroll this view only if the content is large enough to meaningfully scroll, provided it is a view that can scroll.

int OVER_SCROLL_NEVER

Never allow a user to over-scroll this view.

float REQUESTED_FRAME_RATE_CATEGORY_DEFAULT

float REQUESTED_FRAME_RATE_CATEGORY_HIGH

float REQUESTED_FRAME_RATE_CATEGORY_LOW

float REQUESTED_FRAME_RATE_CATEGORY_NORMAL

float REQUESTED_FRAME_RATE_CATEGORY_NO_PREFERENCE

int SCREEN_STATE_OFF

Indicates that the screen has changed state and is now off.

int SCREEN_STATE_ON

Indicates that the screen has changed state and is now on.

int SCROLLBARS_INSIDE_INSET

The scrollbar style to display the scrollbars inside the padded area, increasing the padding of the view.

int SCROLLBARS_INSIDE_OVERLAY

The scrollbar style to display the scrollbars inside the content area, without increasing the padding.

int SCROLLBARS_OUTSIDE_INSET

The scrollbar style to display the scrollbars at the edge of the view, increasing the padding of the view.

int SCROLLBARS_OUTSIDE_OVERLAY

The scrollbar style to display the scrollbars at the edge of the view, without increasing the padding.

int SCROLLBAR_POSITION_DEFAULT

Position the scroll bar at the default position as determined by the system.

int SCROLLBAR_POSITION_LEFT

Position the scroll bar along the left edge.

int SCROLLBAR_POSITION_RIGHT

Position the scroll bar along the right edge.

int SCROLL_AXIS_HORIZONTAL

Indicates scrolling along the horizontal axis.

int SCROLL_AXIS_NONE

Indicates no axis of view scrolling.

int SCROLL_AXIS_VERTICAL

Indicates scrolling along the vertical axis.

int SCROLL_CAPTURE_HINT_AUTO

The content of this view will be considered for scroll capture if scrolling is possible.

int SCROLL_CAPTURE_HINT_EXCLUDE

Explicitly exclude this view as a potential scroll capture target.

int SCROLL_CAPTURE_HINT_EXCLUDE_DESCENDANTS

Explicitly exclude all children of this view as potential scroll capture targets.

int SCROLL_CAPTURE_HINT_INCLUDE

Explicitly include this view as a potential scroll capture target.

int SCROLL_INDICATOR_BOTTOM

Scroll indicator direction for the bottom edge of the view.

int SCROLL_INDICATOR_END

Scroll indicator direction for the ending edge of the view.

int SCROLL_INDICATOR_LEFT

Scroll indicator direction for the left edge of the view.

int SCROLL_INDICATOR_RIGHT

Scroll indicator direction for the right edge of the view.

int SCROLL_INDICATOR_START

Scroll indicator direction for the starting edge of the view.

int SCROLL_INDICATOR_TOP

Scroll indicator direction for the top edge of the view.

int SOUND_EFFECTS_ENABLED

View flag indicating whether this view should have sound effects enabled for events such as clicking and touching.

int STATUS_BAR_HIDDEN

This constant was deprecated in API level 15. Use SYSTEM_UI_FLAG_LOW_PROFILE instead.

int STATUS_BAR_VISIBLE

This constant was deprecated in API level 15. Use SYSTEM_UI_FLAG_VISIBLE instead.

int SYSTEM_UI_FLAG_FULLSCREEN

This constant was deprecated in API level 30. Use WindowInsetsController.hide(int) with Type.statusBars() instead.

int SYSTEM_UI_FLAG_HIDE_NAVIGATION

This constant was deprecated in API level 30. Use WindowInsetsController.hide(int) with Type.navigationBars() instead.

int SYSTEM_UI_FLAG_IMMERSIVE

This constant was deprecated in API level 30. Use WindowInsetsController.BEHAVIOR_DEFAULT instead.

int SYSTEM_UI_FLAG_IMMERSIVE_STICKY

This constant was deprecated in API level 30. Use WindowInsetsController.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE instead.

int SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN

This constant was deprecated in API level 30. For floating windows, use LayoutParams.setFitInsetsTypes(int) with Type.statusBars() ()}. For non-floating windows that fill the screen, call Window.setDecorFitsSystemWindows(boolean) with false.

int SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION

This constant was deprecated in API level 30. For floating windows, use LayoutParams.setFitInsetsTypes(int) with Type.navigationBars(). For non-floating windows that fill the screen, call Window.setDecorFitsSystemWindows(boolean) with false.

int SYSTEM_UI_FLAG_LAYOUT_STABLE

This constant was deprecated in API level 30. Use WindowInsets.getInsetsIgnoringVisibility(int) instead to retrieve insets that don't change when system bars change visibility state.

int SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR

This constant was deprecated in API level 30. Use WindowInsetsController.APPEARANCE_LIGHT_NAVIGATION_BARS instead.

int SYSTEM_UI_FLAG_LIGHT_STATUS_BAR

This constant was deprecated in API level 30. Use WindowInsetsController.APPEARANCE_LIGHT_STATUS_BARS instead.

int SYSTEM_UI_FLAG_LOW_PROFILE

This constant was deprecated in API level 30. Low profile mode is deprecated. Hide the system bars instead if the application needs to be in a unobtrusive mode. Use WindowInsetsController.hide(int) with Type.systemBars().

int SYSTEM_UI_FLAG_VISIBLE

This constant was deprecated in API level 30. SystemUiVisibility flags are deprecated. Use WindowInsetsController instead.

int SYSTEM_UI_LAYOUT_FLAGS

This constant was deprecated in API level 30. System UI layout flags are deprecated.

int TEXT_ALIGNMENT_CENTER

Center the paragraph, e.g. ALIGN_CENTER.

int TEXT_ALIGNMENT_GRAVITY

Default for the root view.

int TEXT_ALIGNMENT_INHERIT

Default text alignment.

int TEXT_ALIGNMENT_TEXT_END

Align to the end of the paragraph, e.g. ALIGN_OPPOSITE.

int TEXT_ALIGNMENT_TEXT_START

Align to the start of the paragraph, e.g. ALIGN_NORMAL.

int TEXT_ALIGNMENT_VIEW_END

Align to the end of the view, which is ALIGN_RIGHT if the view's resolved layoutDirection is LTR, and ALIGN_LEFT otherwise.

int TEXT_ALIGNMENT_VIEW_START

Align to the start of the view, which is ALIGN_LEFT if the view's resolved layoutDirection is LTR, and ALIGN_RIGHT otherwise.

int TEXT_DIRECTION_ANY_RTL

Text direction is using "any-RTL" algorithm.

int TEXT_DIRECTION_FIRST_STRONG

Text direction is using "first strong algorithm".

int TEXT_DIRECTION_FIRST_STRONG_LTR

Text direction is using "first strong algorithm".

int TEXT_DIRECTION_FIRST_STRONG_RTL

Text direction is using "first strong algorithm".

int TEXT_DIRECTION_INHERIT

Text direction is inherited through ViewGroup

int TEXT_DIRECTION_LOCALE

Text direction is coming from the system Locale.

int TEXT_DIRECTION_LTR

Text direction is forced to LTR.

int TEXT_DIRECTION_RTL

Text direction is forced to RTL.

String VIEW_LOG_TAG

The logging tag used by this class with android.util.Log.

int VISIBLE

This view is visible.

Fields

public static final Property<ViewFloat> ALPHA

A Property wrapper around the alpha functionality handled by the View.setAlpha(float) and View.getAlpha() methods.

protected static final int[] EMPTY_STATE_SET

Indicates the view has no states set.

protected static final int[] ENABLED_FOCUSED_SELECTED_STATE_SET

Indicates the view is enabled, focused and selected.

protected static final int[] ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET

Indicates the view is enabled, focused, selected and its window has the focus.

protected static final int[] ENABLED_FOCUSED_STATE_SET

Indicates the view is enabled and has the focus.

protected static final int[] ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET

Indicates the view is enabled, focused and its window has the focus.

protected static final int[] ENABLED_SELECTED_STATE_SET

Indicates the view is enabled and selected.

protected static final int[] ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET

Indicates the view is enabled, selected and its window has the focus.

protected static final int[] ENABLED_STATE_SET

Indicates the view is enabled.

protected static final int[] ENABLED_WINDOW_FOCUSED_STATE_SET

Indicates the view is enabled and that its window has focus.

protected static final int[] FOCUSED_SELECTED_STATE_SET

Indicates the view is focused and selected.

protected static final int[] FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET

Indicates the view is focused, selected and its window has the focus.

protected static final int[] FOCUSED_STATE_SET

Indicates the view is focused.

protected static final int[] FOCUSED_WINDOW_FOCUSED_STATE_SET

Indicates the view has the focus and that its window has the focus.

protected static final int[] PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET

Indicates the view is pressed, enabled, focused and selected.

protected static final int[] PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET

Indicates the view is pressed, enabled, focused, selected and its window has the focus.

protected static final int[] PRESSED_ENABLED_FOCUSED_STATE_SET

Indicates the view is pressed, enabled and focused.

protected static final int[] PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET

Indicates the view is pressed, enabled, focused and its window has the focus.

protected static final int[] PRESSED_ENABLED_SELECTED_STATE_SET

Indicates the view is pressed, enabled and selected.

protected static final int[] PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET

Indicates the view is pressed, enabled, selected and its window has the focus.

protected static final int[] PRESSED_ENABLED_STATE_SET

Indicates the view is pressed and enabled.

protected static final int[] PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET

Indicates the view is pressed, enabled and its window has the focus.

protected static final int[] PRESSED_FOCUSED_SELECTED_STATE_SET

Indicates the view is pressed, focused and selected.

protected static final int[] PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET

Indicates the view is pressed, focused, selected and its window has the focus.

protected static final int[] PRESSED_FOCUSED_STATE_SET

Indicates the view is pressed and focused.

protected static final int[] PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET

Indicates the view is pressed, focused and its window has the focus.

protected static final int[] PRESSED_SELECTED_STATE_SET

Indicates the view is pressed and selected.

protected static final int[] PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET

Indicates the view is pressed, selected and its window has the focus.

protected static final int[] PRESSED_STATE_SET

Indicates the view is pressed.

protected static final int[] PRESSED_WINDOW_FOCUSED_STATE_SET

Indicates the view is pressed and its window has the focus.

public static final Property<ViewFloat> ROTATION

A Property wrapper around the rotation functionality handled by the View.setRotation(float) and View.getRotation() methods.

public static final Property<ViewFloat> ROTATION_X

A Property wrapper around the rotationX functionality handled by the View.setRotationX(float) and View.getRotationX() methods.

public static final Property<ViewFloat> ROTATION_Y

A Property wrapper around the rotationY functionality handled by the View.setRotationY(float) and View.getRotationY() methods.

public static final Property<ViewFloat> SCALE_X

A Property wrapper around the scaleX functionality handled by the View.setScaleX(float) and View.getScaleX() methods.

public static final Property<ViewFloat> SCALE_Y

A Property wrapper around the scaleY functionality handled by the View.setScaleY(float) and View.getScaleY() methods.

protected static final int[] SELECTED_STATE_SET

Indicates the view is selected.

protected static final int[] SELECTED_WINDOW_FOCUSED_STATE_SET

Indicates the view is selected and that its window has the focus.

public static final Property<ViewFloat> TRANSLATION_X

A Property wrapper around the translationX functionality handled by the View.setTranslationX(float) and View.getTranslationX() methods.

public static final Property<ViewFloat> TRANSLATION_Y

A Property wrapper around the translationY functionality handled by the View.setTranslationY(float) and View.getTranslationY() methods.

public static final Property<ViewFloat> TRANSLATION_Z

A Property wrapper around the translationZ functionality handled by the View.setTranslationZ(float) and View.getTranslationZ() methods.

protected static final int[] WINDOW_FOCUSED_STATE_SET

Indicates the view's window has focus.

public static final Property<ViewFloat> X

A Property wrapper around the x functionality handled by the View.setX(float) and View.getX() methods.

public static final Property<ViewFloat> Y

A Property wrapper around the y functionality handled by the View.setY(float) and View.getY() methods.

public static final Property<ViewFloat> Z

A Property wrapper around the z functionality handled by the View.setZ(float) and View.getZ() methods.

Public constructors

View(Context context)

Simple constructor to use when creating a view from code.

View(Context context, AttributeSet attrs)

Constructor that is called when inflating a view from XML.

View(Context context, AttributeSet attrs, int defStyleAttr)

Perform inflation from XML and apply a class-specific base style from a theme attribute.

View(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)

Perform inflation from XML and apply a class-specific base style from a theme attribute or style resource.

Public methods

void addChildrenForAccessibility(ArrayList<View> outChildren)

Adds the children of this View relevant for accessibility to the given list as output.

void addExtraDataToAccessibilityNodeInfo(AccessibilityNodeInfo info, String extraDataKey, Bundle arguments)

Adds extra data to an AccessibilityNodeInfo based on an explicit request for the additional data.

void addFocusables(ArrayList<View> views, int direction)

Add any focusable views that are descendants of this view (possibly including this view if it is focusable itself) to views.

void addFocusables(ArrayList<View> views, int direction, int focusableMode)

Adds any focusable views that are descendants of this view (possibly including this view if it is focusable itself) to views.

void addKeyboardNavigationClusters(Collection<View> views, int direction)

Adds any keyboard navigation cluster roots that are descendants of this view (possibly including this view if it is a cluster root itself) to views.

void addOnAttachStateChangeListener(View.OnAttachStateChangeListener listener)

Add a listener for attach state changes.

void addOnLayoutChangeListener(View.OnLayoutChangeListener listener)

Add a listener that will be called when the bounds of the view change due to layout processing.

void addOnUnhandledKeyEventListener(View.OnUnhandledKeyEventListener listener)

Adds a listener which will receive unhandled KeyEvents.

void addTouchables(ArrayList<View> views)

Add any touchable views that are descendants of this view (possibly including this view if it is touchable itself) to views.

ViewPropertyAnimator animate()

This method returns a ViewPropertyAnimator object, which can be used to animate specific properties on this View.

void announceForAccessibility(CharSequence text)

This method was deprecated in API level 36. Use one of the methods described in the documentation above to semantically describe UI instead of using an announcement, as accessibility services may choose to ignore events dispatched with this method.

void autofill(AutofillValue value)

Automatically fills the content of this view with the value.

void autofill(SparseArray<AutofillValue> values)

Automatically fills the content of the virtual children within this view.

void bringToFront()

Change the view's z order in the tree, so it's on top of other sibling views.

void buildDrawingCache(boolean autoScale)

This method was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

void buildDrawingCache()

This method was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

void buildLayer()

Forces this view's layer to be created and this view to be rendered into its layer.

boolean callOnClick()

Directly call any attached OnClickListener.

boolean canResolveLayoutDirection()

Check if layout direction resolution can be done.

boolean canResolveTextAlignment()

Check if text alignment resolution can be done.

boolean canResolveTextDirection()

Check if text direction resolution can be done.

boolean canScrollHorizontally(int direction)

Check if this view can be scrolled horizontally in a certain direction.

boolean canScrollVertically(int direction)

Check if this view can be scrolled vertically in a certain direction.

final void cancelDragAndDrop()

Cancels an ongoing drag and drop operation.

void cancelLongPress()

Cancels a pending long press.

final void cancelPendingInputEvents()

Cancel any deferred high-level input events that were previously posted to the event queue.

boolean checkInputConnectionProxy(View view)

Called by the InputMethodManager when a view who is not the current input connection target is trying to make a call on the manager.

void clearAnimation()

Cancels any animations for this view.

void clearFocus()

Called when this view wants to give up focus.

void clearPendingCredentialRequest()

Clears the request and callback previously set through View.setPendingCredentialRequest.

void clearViewTranslationCallback()

Clear the ViewTranslationCallback from this view.

static int combineMeasuredStates(int curState, int newState)

Merge two states as returned by getMeasuredState().

void computeScroll()

Called by a parent to request that a child update its values for mScrollX and mScrollY if necessary.

WindowInsets computeSystemWindowInsets(WindowInsets in, Rect outLocalInsets)

Compute insets that should be consumed by this view and the ones that should propagate to those under it.

AccessibilityNodeInfo createAccessibilityNodeInfo()

Returns an AccessibilityNodeInfo representing this view from the point of view of an AccessibilityService.

void createContextMenu(ContextMenu menu)

Show the context menu for this view.

void destroyDrawingCache()

This method was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

WindowInsets dispatchApplyWindowInsets(WindowInsets insets)

Request to apply the given window insets to this view or another view in its subtree.

boolean dispatchCapturedPointerEvent(MotionEvent event)

Pass a captured pointer event down to the focused view.

void dispatchConfigurationChanged(Configuration newConfig)

Dispatch a notification about a resource configuration change down the view hierarchy.

void dispatchCreateViewTranslationRequest(Map<AutofillId, long[]> viewIds, int[] supportedFormats, TranslationCapability capability, List<ViewTranslationRequest> requests)

Dispatch to collect the ViewTranslationRequests for translation purpose by traversing the hierarchy when the app requests ui translation.

void dispatchDisplayHint(int hint)

Dispatch a hint about whether this view is displayed.

boolean dispatchDragEvent(DragEvent event)

Detects if this View is enabled and has a drag event listener.

void dispatchDrawableHotspotChanged(float x, float y)

Dispatches drawableHotspotChanged to all of this View's children.

void dispatchFinishTemporaryDetach()

Dispatch onFinishTemporaryDetach() to this View and its direct children if this is a container View.

boolean dispatchGenericMotionEvent(MotionEvent event)

Dispatch a generic motion event.

boolean dispatchKeyEvent(KeyEvent event)

Dispatch a key event to the next view on the focus path.

boolean dispatchKeyEventPreIme(KeyEvent event)

Dispatch a key event before it is processed by any input method associated with the view hierarchy.

boolean dispatchKeyShortcutEvent(KeyEvent event)

Dispatches a key shortcut event.

boolean dispatchNestedFling(float velocityX, float velocityY, boolean consumed)

Dispatch a fling to a nested scrolling parent.

boolean dispatchNestedPreFling(float velocityX, float velocityY)

Dispatch a fling to a nested scrolling parent before it is processed by this view.

boolean dispatchNestedPrePerformAccessibilityAction(int action, Bundle arguments)

Report an accessibility action to this view's parents for delegated processing.

boolean dispatchNestedPreScroll(int dx, int dy, int[] consumed, int[] offsetInWindow)

Dispatch one step of a nested scroll in progress before this view consumes any portion of it.

boolean dispatchNestedScroll(int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed, int[] offsetInWindow)

Dispatch one step of a nested scroll in progress.

void dispatchPointerCaptureChanged(boolean hasCapture)
boolean dispatchPopulateAccessibilityEvent(AccessibilityEvent event)

Dispatches an AccessibilityEvent to the View to add the text content of the view and its children.

void dispatchProvideAutofillStructure(ViewStructure structure, int flags)

Dispatches creation of a ViewStructures for autofill purposes down the hierarchy, when an Assist structure is being created as part of an autofill request.

void dispatchProvideStructure(ViewStructure structure)

Dispatch creation of ViewStructure down the hierarchy.

void dispatchScrollCaptureSearch(Rect localVisibleRect, Point windowOffset, Consumer<ScrollCaptureTarget> targets)

Dispatch a scroll capture search request down the view hierarchy.

void dispatchStartTemporaryDetach()

Dispatch onStartTemporaryDetach() to this View and its direct children if this is a container View.

void dispatchSystemUiVisibilityChanged(int visibility)

This method was deprecated in API level 30. Use WindowInsets.isVisible(int) to find out about system bar visibilities by setting a OnApplyWindowInsetsListener on this view.

boolean dispatchTouchEvent(MotionEvent event)

Pass the touch screen motion event down to the target view, or this view if it is the target.

boolean dispatchTrackballEvent(MotionEvent event)

Pass a trackball motion event down to the focused view.

boolean dispatchUnhandledMove(View focused, int direction)

This method is the last chance for the focused view and its ancestors to respond to an arrow key.

void dispatchWindowFocusChanged(boolean hasFocus)

Called when the window containing this view gains or loses window focus.

void dispatchWindowInsetsAnimationEnd(WindowInsetsAnimation animation)

Dispatches WindowInsetsAnimation.Callback.onEnd(WindowInsetsAnimation) when Window Insets animation ends.

void dispatchWindowInsetsAnimationPrepare(WindowInsetsAnimation animation)

Dispatches WindowInsetsAnimation.Callback.onPrepare(WindowInsetsAnimation) when Window Insets animation is being prepared.

WindowInsets dispatchWindowInsetsAnimationProgress(WindowInsets insets, List<WindowInsetsAnimation> runningAnimations)

Dispatches WindowInsetsAnimation.Callback.onProgress(WindowInsets, List) when Window Insets animation makes progress.

WindowInsetsAnimation.Bounds dispatchWindowInsetsAnimationStart(WindowInsetsAnimation animation, WindowInsetsAnimation.Bounds bounds)

Dispatches WindowInsetsAnimation.Callback.onStart(WindowInsetsAnimation, Bounds) when Window Insets animation is started.

void dispatchWindowSystemUiVisiblityChanged(int visible)

This method was deprecated in API level 30. SystemUiVisibility flags are deprecated. Use WindowInsetsController instead.

void dispatchWindowVisibilityChanged(int visibility)

Dispatch a window visibility change down the view hierarchy.

void draw(Canvas canvas)

Manually render this view (and all of its children) to the given Canvas.

void drawableHotspotChanged(float x, float y)

This function is called whenever the view hotspot changes and needs to be propagated to drawables or child views managed by the view.

View findFocus()

Find the view in the hierarchy rooted at this view that currently has focus.

final OnBackInvokedDispatcher findOnBackInvokedDispatcher()

Walk up the View hierarchy to find the nearest OnBackInvokedDispatcher.

final <T extends View> T findViewById(int id)

Finds the first descendant view with the given ID, the view itself if the ID matches getId(), or null if the ID is invalid (< 0) or there is no matching view in the hierarchy.

final <T extends View> T findViewWithTag(Object tag)

Look for a child view with the given tag.

void findViewsWithText(ArrayList<View> outViews, CharSequence searched, int flags)

Finds the Views that contain given text.

View focusSearch(int direction)

Find the nearest view in the specified direction that can take focus.

void forceHasOverlappingRendering(boolean hasOverlappingRendering)

Sets the behavior for overlapping rendering for this view (see hasOverlappingRendering() for more details on this behavior).

void forceLayout()

Forces this view to be laid out during the next layout pass.

boolean gatherTransparentRegion(Region region)

This is used by the ViewRoot to perform an optimization when the view hierarchy contains one or several SurfaceView.

void generateDisplayHash(String hashAlgorithm, Rect bounds, Executor executor, DisplayHashResultCallback callback)

Called to generate a DisplayHash for this view.

static int generateViewId()

Generate a value suitable for use in setId(int).

CharSequence getAccessibilityClassName()

Return the class name of this object to be used for accessibility purposes.

View.AccessibilityDelegate getAccessibilityDelegate()

Returns the delegate for implementing accessibility support via composition.

int getAccessibilityLiveRegion()

Gets the live region mode for this View.

AccessibilityNodeProvider getAccessibilityNodeProvider()

Gets the provider for managing a virtual view hierarchy rooted at this View and reported to AccessibilityServices that explore the window content.

CharSequence getAccessibilityPaneTitle()

Get the title of the pane for purposes of accessibility.

int getAccessibilityTraversalAfter()

Gets the id of a view after which this one is visited in accessibility traversal.

int getAccessibilityTraversalBefore()

Gets the id of a view before which this one is visited in accessibility traversal.

String getAllowedHandwritingDelegatePackageName()

Returns the allowed package for delegate editor views for which this view may act as a handwriting delegator, as set by setAllowedHandwritingDelegatePackage(String).

String getAllowedHandwritingDelegatorPackageName()

Returns the allowed package for views which may act as a handwriting delegator for this delegate editor view, as set by setAllowedHandwritingDelegatorPackage(String).

float getAlpha()

The opacity of the view.

Animation getAnimation()

Get the animation currently associated with this view.

Matrix getAnimationMatrix()

Return the current transformation matrix of the view.

IBinder getApplicationWindowToken()

Retrieve a unique token identifying the top-level "real" window of the window that this view is attached to.

int[] getAttributeResolutionStack(int attribute)

Returns the ordered list of resource ID that are considered when resolving attribute values for this View.

Map<IntegerInteger> getAttributeSourceResourceMap()

Returns the mapping of attribute resource ID to source resource ID where the attribute value was set.

String[] getAutofillHints()

Gets the hints that help an AutofillService determine how to autofill the view with the user's data.

final AutofillId getAutofillId()

Gets the unique, logical identifier of this view in the activity, for autofill purposes.

int getAutofillType()

Describes the autofill type of this view, so an AutofillService can create the proper AutofillValue when autofilling the view.

AutofillValue getAutofillValue()

Gets the View's current autofill value.

Drawable getBackground()

Gets the background drawable

BlendMode getBackgroundTintBlendMode()

Return the blending mode used to apply the tint to the background drawable, if specified.

ColorStateList getBackgroundTintList()

Return the tint applied to the background drawable, if specified.

PorterDuff.Mode getBackgroundTintMode()

Return the blending mode used to apply the tint to the background drawable, if specified.

int getBaseline()

Return the offset of the widget's text baseline from the widget's top boundary.

final int getBottom()

Bottom position of this view relative to its parent.

float getCameraDistance()

Gets the distance along the Z axis from the camera to this view.

boolean getClipBounds(Rect outRect)

Populates an output rectangle with the clip bounds of the view, returning true if successful or false if the view's clip bounds are null.

Rect getClipBounds()

Returns a copy of the current clipBounds.

final boolean getClipToOutline()

Returns whether the Outline should be used to clip the contents of the View.

final ContentCaptureSession getContentCaptureSession()

Gets the session used to notify content capture events.

CharSequence getContentDescription()

Returns the View's content description.

final int getContentSensitivity()

Gets content sensitivity mode to determine whether this view displays sensitive content.

final Context getContext()

Returns the context the view is running in, through which it can access the current theme, resources, etc.

final boolean getDefaultFocusHighlightEnabled()

Returns whether this View should use a default focus highlight when it gets focused but doesn't have R.attr.state_focused defined in its background.

static int getDefaultSize(int size, int measureSpec)

Utility to return a default size.

Display getDisplay()

Gets the logical display to which the view's window has been attached.

final int[] getDrawableState()

Return an array of resource IDs of the drawable states representing the current state of the view.

Bitmap getDrawingCache()

This method was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

Bitmap getDrawingCache(boolean autoScale)

This method was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

int getDrawingCacheBackgroundColor()

This method was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

int getDrawingCacheQuality()

This method was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

void getDrawingRect(Rect outRect)

Return the visible drawing bounds of your view.

long getDrawingTime()

Return the time at which the drawing of the view hierarchy started.

float getElevation()

The base elevation of this view relative to its parent, in pixels.

int getExplicitStyle()

Returns the resource ID for the style specified using style="..." in the AttributeSet's backing XML element or Resources.ID_NULL otherwise if not specified or otherwise not applicable.

boolean getFilterTouchesWhenObscured()

Gets whether the framework should discard touches when the view's window is obscured by another visible window at the touched location.

boolean getFitsSystemWindows()

Check for state of setFitsSystemWindows(boolean).

int getFocusable()

Returns the focusable setting for this view.

ArrayList<View> getFocusables(int direction)

Find and return all focusable views that are descendants of this view, possibly including this view if it is focusable itself.

void getFocusedRect(Rect r)

When a view has focus and the user navigates away from it, the next view is searched for starting from the rectangle filled in by this method.

Drawable getForeground()

Returns the drawable used as the foreground of this View.

int getForegroundGravity()

Describes how the foreground is positioned.

BlendMode getForegroundTintBlendMode()

Return the blending mode used to apply the tint to the foreground drawable, if specified.

ColorStateList getForegroundTintList()

Return the tint applied to the foreground drawable, if specified.

PorterDuff.Mode getForegroundTintMode()

Return the blending mode used to apply the tint to the foreground drawable, if specified.

float getFrameContentVelocity()

Get the current velocity of the View.

final boolean getGlobalVisibleRect(Rect r)

Sets r to the coordinates of the non-clipped area of this view in the coordinate space of the view's root view.

boolean getGlobalVisibleRect(Rect r, Point globalOffset)

Sets r to the coordinates of the non-clipped area of this view in the coordinate space of the view's root view.

Handler getHandler()
float getHandwritingBoundsOffsetBottom()

Return the amount of offset applied to the bottom edge of this view's handwriting bounds, in the unit of pixel.

float getHandwritingBoundsOffsetLeft()

Return the amount of offset applied to the left edge of this view's handwriting bounds, in the unit of pixel.

float getHandwritingBoundsOffsetRight()

Return the amount of offset applied to the right edge of this view's handwriting bounds, in the unit of pixel.

float getHandwritingBoundsOffsetTop()

Return the amount of offset applied to the top edge of this view's handwriting bounds, in the unit of pixel.

int getHandwritingDelegateFlags()

Returns flags configuring the handwriting delegation behavior for this delegate editor view, as set by setHandwritingDelegateFlags(int).

Runnable getHandwritingDelegatorCallback()

Returns the callback set by setHandwritingDelegatorCallback(Runnable) which should be called when a stylus MotionEvent occurs within this view's bounds.

final boolean getHasOverlappingRendering()

Returns the value for overlapping rendering that is used internally.

final int getHeight()

Return the height of your view.

void getHitRect(Rect outRect)

Hit rectangle in parent's coordinates

int getHorizontalFadingEdgeLength()

Returns the size of the horizontal faded edges used to indicate that more content in this view is visible.

Drawable getHorizontalScrollbarThumbDrawable()

Returns the currently configured Drawable for the thumb of the horizontal scroll bar if it exists, null otherwise.

Drawable getHorizontalScrollbarTrackDrawable()

Returns the currently configured Drawable for the track of the horizontal scroll bar if it exists, null otherwise.

int getId()

Returns this view's identifier.

int getImportantForAccessibility()

Gets the mode for determining whether this View is important for accessibility.

int getImportantForAutofill()

Gets the mode for determining whether this view is important for autofill.

int getImportantForContentCapture()

Gets the mode for determining whether this view is important for content capture.

boolean getKeepScreenOn()

Returns whether the screen should remain on, corresponding to the current value of KEEP_SCREEN_ON.

KeyEvent.DispatcherState getKeyDispatcherState()

Return the global KeyEvent.DispatcherState for this view's window.

int getLabelFor()

Gets the id of a view for which this view serves as a label for accessibility purposes.

int getLayerType()

Indicates what type of layer is currently associated with this view.

int getLayoutDirection()

Returns the resolved layout direction for this view.

ViewGroup.LayoutParams getLayoutParams()

Get the LayoutParams associated with this view.

final int getLeft()

Left position of this view relative to its parent.

final boolean getLocalVisibleRect(Rect r)

Sets r to the coordinates of the non-clipped area of this view relative to the top left corner of the view.

void getLocationInSurface(int[] location)

Gets the coordinates of this view in the coordinate space of the Surface that contains the view.

void getLocationInWindow(int[] outLocation)

Gets the coordinates of this view in the coordinate space of the window that contains the view, irrespective of system decorations.

void getLocationOnScreen(int[] outLocation)

Gets the coordinates of this view in the coordinate space of the device screen, irrespective of system decorations and whether the system is in multi-window mode.

Matrix getMatrix()

The transform matrix of this view, which is calculated based on the current rotation, scale, and pivot properties.

final int getMeasuredHeight()

Like getMeasuredHeightAndState(), but only returns the raw height component (that is the result is masked by MEASURED_SIZE_MASK).

final int getMeasuredHeightAndState()

Return the full height measurement information for this view as computed by the most recent call to measure(int, int).

final int getMeasuredState()

Return only the state bits of getMeasuredWidthAndState() and getMeasuredHeightAndState(), combined into one integer.

final int getMeasuredWidth()

Like getMeasuredWidthAndState(), but only returns the raw width component (that is the result is masked by MEASURED_SIZE_MASK).

final int getMeasuredWidthAndState()

Return the full width measurement information for this view as computed by the most recent call to measure(int, int).

int getMinimumHeight()

Returns the minimum height of the view.

int getMinimumWidth()

Returns the minimum width of the view.

int getNextClusterForwardId()

Gets the id of the root of the next keyboard navigation cluster.

int getNextFocusDownId()

Gets the id of the view to use when the next focus is FOCUS_DOWN.

int getNextFocusForwardId()

Gets the id of the view to use when the next focus is FOCUS_FORWARD.

int getNextFocusLeftId()

Gets the id of the view to use when the next focus is FOCUS_LEFT.

int getNextFocusRightId()

Gets the id of the view to use when the next focus is FOCUS_RIGHT.

int getNextFocusUpId()

Gets the id of the view to use when the next focus is FOCUS_UP.

View.OnFocusChangeListener getOnFocusChangeListener()

Returns the focus-change callback registered for this view.

int getOutlineAmbientShadowColor()
ViewOutlineProvider getOutlineProvider()

Returns the current ViewOutlineProvider of the view, which generates the Outline that defines the shape of the shadow it casts, and enables outline clipping.

int getOutlineSpotShadowColor()
int getOverScrollMode()

Returns the over-scroll mode for this view.

ViewOverlay getOverlay()

Returns the overlay for this view, creating it if it does not yet exist.

int getPaddingBottom()

Returns the bottom padding of this view.

int getPaddingEnd()

Returns the end padding of this view depending on its resolved layout direction.

int getPaddingLeft()

Returns the left padding of this view.

int getPaddingRight()

Returns the right padding of this view.

int getPaddingStart()

Returns the start padding of this view depending on its resolved layout direction.

int getPaddingTop()

Returns the top padding of this view.

final ViewParent getParent()

Gets the parent of this view.

ViewParent getParentForAccessibility()

Gets the parent for accessibility purposes.

final OutcomeReceiver<GetCredentialResponseGetCredentialException> getPendingCredentialCallback()

Returns the callback that has previously been set up on this view through the setPendingCredentialRequest(GetCredentialRequest, OutcomeReceiver) API.

final GetCredentialRequest getPendingCredentialRequest()

Returns the GetCredentialRequest associated with the view.

float getPivotX()

The x location of the point around which the view is rotated and scaled.

float getPivotY()

The y location of the point around which the view is rotated and scaled.

PointerIcon getPointerIcon()

Gets the mouse pointer icon for the current view.

final List<Rect> getPreferKeepClearRects()
String[] getReceiveContentMimeTypes()

Returns the MIME types accepted by performReceiveContent(ContentInfo) for this view, as configured via setOnReceiveContentListener(String, OnReceiveContentListener).

float getRequestedFrameRate()

Get the current preferred frame rate of the View.

Resources getResources()

Returns the resources associated with this view.

final boolean getRevealOnFocusHint()

Returns this view's preference for reveal behavior when it gains focus.

final int getRight()

Right position of this view relative to its parent.

AttachedSurfaceControl getRootSurfaceControl()

The AttachedSurfaceControl itself is not a View, it is just the interface to the windowing-system object that contains the entire view hierarchy.

View getRootView()

Finds the topmost view in the current view hierarchy.

WindowInsets getRootWindowInsets()

Provide original WindowInsets that are dispatched to the view hierarchy.

float getRotation()

The degrees that the view is rotated around the pivot point.

float getRotationX()

The degrees that the view is rotated around the horizontal axis through the pivot point.

float getRotationY()

The degrees that the view is rotated around the vertical axis through the pivot point.

float getScaleX()

The amount that the view is scaled in x around the pivot point, as a proportion of the view's unscaled width.

float getScaleY()

The amount that the view is scaled in y around the pivot point, as a proportion of the view's unscaled height.

int getScrollBarDefaultDelayBeforeFade()

Returns the delay before scrollbars fade.

int getScrollBarFadeDuration()

Returns the scrollbar fade duration.

int getScrollBarSize()

Returns the scrollbar size.

int getScrollBarStyle()

Returns the current scrollbar style.

int getScrollCaptureHint()

Returns the current scroll capture hint for this view.

int getScrollIndicators()

Returns a bitmask representing the enabled scroll indicators.

final int getScrollX()

Return the scrolled left position of this view.

final int getScrollY()

Return the scrolled top position of this view.

int getSolidColor()

Override this if your view is known to always be drawn on top of a solid color background, and needs to draw fading edges.

int getSourceLayoutResId()

A View can be inflated from an XML layout.

final CharSequence getStateDescription()

Returns the View's state description.

StateListAnimator getStateListAnimator()

Returns the current StateListAnimator if exists.

CharSequence getSupplementalDescription()

Returns the View's supplemental description.

List<Rect> getSystemGestureExclusionRects()

Retrieve the list of areas within this view's post-layout coordinate space where the system should not intercept touch or other pointing device gestures.

int getSystemUiVisibility()

This method was deprecated in API level 30. SystemUiVisibility flags are deprecated. Use WindowInsetsController instead.

Object getTag()

Returns this view's tag.

Object getTag(int key)

Returns the tag associated with this view and the specified key.

int getTextAlignment()

Return the resolved text alignment.

int getTextDirection()

Return the resolved text direction.

CharSequence getTooltipText()

Returns the view's tooltip text.

final int getTop()

Top position of this view relative to its parent.

TouchDelegate getTouchDelegate()

Gets the TouchDelegate for this View.

ArrayList<View> getTouchables()

Find and return all touchable views that are descendants of this view, possibly including this view if it is touchable itself.

float getTransitionAlpha()

This property is intended only for use by the Fade transition, which animates it to produce a visual translucency that does not side-effect (or get affected by) the real alpha property.

String getTransitionName()

Returns the name of the View to be used to identify Views in Transitions.

float getTranslationX()

The horizontal location of this view relative to its left position.

float getTranslationY()

The vertical location of this view relative to its top position.

float getTranslationZ()

The depth location of this view relative to its elevation.

long getUniqueDrawingId()

Get the identifier used for this view by the drawing system.

int getVerticalFadingEdgeLength()

Returns the size of the vertical faded edges used to indicate that more content in this view is visible.

int getVerticalScrollbarPosition()
Drawable getVerticalScrollbarThumbDrawable()

Returns the currently configured Drawable for the thumb of the vertical scroll bar if it exists, null otherwise.

Drawable getVerticalScrollbarTrackDrawable()

Returns the currently configured Drawable for the track of the vertical scroll bar if it exists, null otherwise.

int getVerticalScrollbarWidth()

Returns the width of the vertical scrollbar.

ViewTranslationResponse getViewTranslationResponse()

Returns the ViewTranslationResponse associated with this view.

ViewTreeObserver getViewTreeObserver()

Returns the ViewTreeObserver for this view's hierarchy.

int getVisibility()

Returns the visibility status for this view.

final int getWidth()

Return the width of your view.

WindowId getWindowId()

Retrieve the WindowId for the window this view is currently attached to.

WindowInsetsController getWindowInsetsController()

Retrieves the single WindowInsetsController of the window this view is attached to.

int getWindowSystemUiVisibility()

This method was deprecated in API level 30. SystemUiVisibility flags are deprecated. Use WindowInsetsController instead.

IBinder getWindowToken()

Retrieve a unique token identifying the window this view is attached to.

int getWindowVisibility()

Returns the current visibility of the window this view is attached to (either GONE, INVISIBLE, or VISIBLE).

void getWindowVisibleDisplayFrame(Rect outRect)

Retrieve the overall visible display size in which the window this view is attached to has been positioned in.

float getX()

The visual x position of this view, in pixels.

float getY()

The visual y position of this view, in pixels.

float getZ()

The visual z position of this view, in pixels.

boolean hasExplicitFocusable()

Returns true if this view is focusable or if it contains a reachable View for which hasExplicitFocusable() returns true.

boolean hasFocus()

Returns true if this view has focus itself, or is the ancestor of the view that has focus.

boolean hasFocusable()

Returns true if this view is focusable or if it contains a reachable View for which hasFocusable() returns true.

boolean hasNestedScrollingParent()

Returns true if this view has a nested scrolling parent.

boolean hasOnClickListeners()

Return whether this view has an attached OnClickListener.

boolean hasOnLongClickListeners()

Return whether this view has an attached OnLongClickListener.

boolean hasOverlappingRendering()

Returns whether this View has content which overlaps.

boolean hasPointerCapture()

Checks pointer capture status.

boolean hasTransientState()

Indicates whether the view is currently tracking transient state that the app should not need to concern itself with saving and restoring, but that the framework should take special note to preserve when possible.

boolean hasWindowFocus()

Returns true if this view is in a window that currently has window focus.

static View inflate(Context context, int resource, ViewGroup root)

Inflate a view from an XML resource.

void invalidate()

Invalidate the whole view.

void invalidate(Rect dirty)

This method was deprecated in API level 28. The switch to hardware accelerated rendering in API 14 reduced the importance of the dirty rectangle. In API 21 the given rectangle is ignored entirely in favor of an internally-calculated area instead. Because of this, clients are encouraged to just call invalidate().

void invalidate(int l, int t, int r, int b)

This method was deprecated in API level 28. The switch to hardware accelerated rendering in API 14 reduced the importance of the dirty rectangle. In API 21 the given rectangle is ignored entirely in favor of an internally-calculated area instead. Because of this, clients are encouraged to just call invalidate().

void invalidateDrawable(Drawable drawable)

Invalidates the specified Drawable.

void invalidateOutline()

Called to rebuild this View's Outline from its outline provider

boolean isAccessibilityDataSensitive()

Whether this view should restrict accessibility service access only to services that have the AccessibilityServiceInfo.isAccessibilityTool() property set to true.

boolean isAccessibilityFocused()

Returns whether this View is accessibility focused.

boolean isAccessibilityHeading()

Gets whether this view is a heading for accessibility purposes.

boolean isActivated()

Indicates the activation state of this view.

boolean isAttachedToWindow()

Returns true if this view is currently attached to a window.

boolean isAutoHandwritingEnabled()

Return whether the View allows automatic handwriting initiation.

boolean isClickable()

Indicates whether this view reacts to click events or not.

final boolean isContentSensitive()

Returns whether this view displays sensitive content, based on the value explicitly set by setContentSensitivity(int).

boolean isContextClickable()

Indicates whether this view reacts to context clicks or not.

boolean isCredential()

Gets the mode for determining whether this view is a credential.

boolean isDirty()

True if this view has changed since the last time being drawn.

boolean isDrawingCacheEnabled()

This method was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

boolean isDuplicateParentStateEnabled()

Indicates whether this duplicates its drawable state from its parent.

boolean isEnabled()

Returns the enabled status for this view.

final boolean isFocusable()

Returns whether this View is currently able to take focus.

final boolean isFocusableInTouchMode()

When a view is focusable, it may not want to take focus when in touch mode.

boolean isFocused()

Returns true if this view has focus

final boolean isFocusedByDefault()

Returns whether this View should receive focus when the focus is restored for the view hierarchy containing this view.

boolean isForceDarkAllowed()

See setForceDarkAllowed(boolean)

boolean isHandwritingDelegate()

Returns whether this view has been set as a handwriting delegate by setIsHandwritingDelegate(boolean).

boolean isHapticFeedbackEnabled()
boolean isHardwareAccelerated()

Indicates whether this view is attached to a hardware accelerated window or not.

boolean isHorizontalFadingEdgeEnabled()

Indicate whether the horizontal edges are faded when the view is scrolled horizontally.

boolean isHorizontalScrollBarEnabled()

Indicate whether the horizontal scrollbar should be drawn or not.

boolean isHovered()

Returns true if the view is currently hovered.

boolean isImportantForAccessibility()

Computes whether this view should be exposed for accessibility.

final boolean isImportantForAutofill()

Hints the Android System whether the AssistStructure.ViewNode associated with this view is considered important for autofill purposes.

final boolean isImportantForContentCapture()

Hints the Android System whether this view is considered important for content capture, based on the value explicitly set by setImportantForContentCapture(int) and heuristics when it's IMPORTANT_FOR_CONTENT_CAPTURE_AUTO.

boolean isInEditMode()

Indicates whether this View is currently in edit mode.

boolean isInLayout()

Returns whether the view hierarchy is currently undergoing a layout pass.

boolean isInTouchMode()

Returns the touch mode state associated with this view.

final boolean isKeyboardNavigationCluster()

Returns whether this View is a root of a keyboard navigation cluster.

boolean isLaidOut()

Returns true if this view has been through at least one layout since it was last attached to or detached from a window.

boolean isLayoutDirectionResolved()
boolean isLayoutRequested()

Indicates whether or not this view's layout will be requested during the next hierarchy layout pass.

boolean isLongClickable()

Indicates whether this view reacts to long click events or not.

boolean isNestedScrollingEnabled()

Returns true if nested scrolling is enabled for this view.

boolean isOpaque()

Indicates whether this View is opaque.

boolean isPaddingRelative()

Return if the padding has been set through relative values setPaddingRelative(int, int, int, int) or through

boolean isPivotSet()

Returns whether or not a pivot has been set by a call to setPivotX(float) or setPivotY(float).

final boolean isPreferKeepClear()

Retrieve the preference for this view to be kept clear.

boolean isPressed()

Indicates whether the view is currently in pressed state.

boolean isSaveEnabled()

Indicates whether this view will save its state (that is, whether its onSaveInstanceState() method will be called).

boolean isSaveFromParentEnabled()

Indicates whether the entire hierarchy under this view will save its state when a state saving traversal occurs from its parent.

boolean isScreenReaderFocusable()

Returns whether the view should be treated as a focusable unit by screen reader accessibility tools.

boolean isScrollContainer()

Indicates whether this view is one of the set of scrollable containers in its window.

boolean isScrollbarFadingEnabled()

Returns true if scrollbars will fade when this view is not scrolling

boolean isSelected()

Indicates the selection state of this view.

final boolean isShowingLayoutBounds()

Returns true when the View is attached and the system developer setting to show the layout bounds is enabled or false otherwise.

boolean isShown()

Returns the visibility of this view and all of its ancestors

boolean isSoundEffectsEnabled()
final boolean isTemporarilyDetached()

Tells whether the View is in the state between onStartTemporaryDetach() and onFinishTemporaryDetach().

boolean isTextAlignmentResolved()
boolean isTextDirectionResolved()
boolean isVerticalFadingEdgeEnabled()

Indicate whether the vertical edges are faded when the view is scrolled horizontally.

boolean isVerticalScrollBarEnabled()

Indicate whether the vertical scrollbar should be drawn or not.

boolean isVisibleToUserForAutofill(int virtualId)

Computes whether this virtual autofill view is visible to the user.

void jumpDrawablesToCurrentState()

Call Drawable.jumpToCurrentState() on all Drawable objects associated with this view.

View keyboardNavigationClusterSearch(View currentCluster, int direction)

Find the nearest keyboard navigation cluster in the specified direction.

void layout(int l, int t, int r, int b)

Assign a size and position to a view and all of its descendants

This is the second phase of the layout mechanism.

final void measure(int widthMeasureSpec, int heightMeasureSpec)

This is called to find out how big a view should be.

void offsetLeftAndRight(int offset)

Offset this view's horizontal location by the specified amount of pixels.

void offsetTopAndBottom(int offset)

Offset this view's vertical location by the specified number of pixels.

WindowInsets onApplyWindowInsets(WindowInsets insets)

Called when the view should apply WindowInsets according to its internal policy.

void onCancelPendingInputEvents()

Called as the result of a call to cancelPendingInputEvents() on this view or a parent view.

boolean onCapturedPointerEvent(MotionEvent event)

Implement this method to handle captured pointer events

boolean onCheckIsTextEditor()

Check whether the called view is a text editor, in which case it would make sense to automatically display a soft input window for it.

InputConnection onCreateInputConnection(EditorInfo outAttrs)

Create a new InputConnection for an InputMethod to interact with the view.

void onCreateViewTranslationRequest(int[] supportedFormats, Consumer<ViewTranslationRequest> requestsCollector)

Collects a ViewTranslationRequest which represents the content to be translated in the view.

void onCreateVirtualViewTranslationRequests(long[] virtualIds, int[] supportedFormats, Consumer<ViewTranslationRequest> requestsCollector)

Collects ViewTranslationRequests which represents the content to be translated for the virtual views in the host view.

boolean onDragEvent(DragEvent event)

Handles drag events sent by the system following a call to startDragAndDrop().

void onDrawForeground(Canvas canvas)

Draw any foreground content for this view.

boolean onFilterTouchEventForSecurity(MotionEvent event)

Filter the touch event to apply security policies.

void onFinishTemporaryDetach()

Called after onStartTemporaryDetach() when the container is done changing the view.

boolean onGenericMotionEvent(MotionEvent event)

Implement this method to handle generic motion events.

void onHoverChanged(boolean hovered)

Implement this method to handle hover state changes.

boolean onHoverEvent(MotionEvent event)

Implement this method to handle hover events.

void onInitializeAccessibilityEvent(AccessibilityEvent event)

Initializes an AccessibilityEvent with information about this View which is the event source.

void onInitializeAccessibilityNodeInfo(AccessibilityNodeInfo info)

Initializes an AccessibilityNodeInfo with information about this view.

boolean onKeyDown(int keyCode, KeyEvent event)

Default implementation of KeyEvent.Callback.onKeyDown(): perform press of the view when KeyEvent.KEYCODE_DPAD_CENTER or KeyEvent.KEYCODE_ENTER is released, if the view is enabled and clickable.

boolean onKeyLongPress(int keyCode, KeyEvent event)

Default implementation of KeyEvent.Callback.onKeyLongPress(): always returns false (doesn't handle the event).

boolean onKeyMultiple(int keyCode, int repeatCount, KeyEvent event)

Default implementation of KeyEvent.Callback.onKeyMultiple(): always returns false (doesn't handle the event).

boolean onKeyPreIme(int keyCode, KeyEvent event)

Handle a key event before it is processed by any input method associated with the view hierarchy.

boolean onKeyShortcut(int keyCode, KeyEvent event)

Called on the focused view when a key shortcut event is not handled.

boolean onKeyUp(int keyCode, KeyEvent event)

Default implementation of KeyEvent.Callback.onKeyUp(): perform clicking of the view when KeyEvent.KEYCODE_DPAD_CENTER, KeyEvent.KEYCODE_ENTER or KeyEvent.KEYCODE_SPACE is released.

void onPointerCaptureChange(boolean hasCapture)

Called when the window has just acquired or lost pointer capture.

void onPopulateAccessibilityEvent(AccessibilityEvent event)

Called from dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent) giving a chance to this View to populate the accessibility event with its text content.

void onProvideAutofillStructure(ViewStructure structure, int flags)

Populates a ViewStructure to fullfil an autofill request.

void onProvideAutofillVirtualStructure(ViewStructure structure, int flags)

Populates a ViewStructure containing virtual children to fullfil an autofill request.

void onProvideContentCaptureStructure(ViewStructure structure, int flags)

Populates a ViewStructure for content capture.

void onProvideStructure(ViewStructure structure)

Called when assist structure is being retrieved from a view as part of Activity.onProvideAssistData.

void onProvideVirtualStructure(ViewStructure structure)

Called when assist structure is being retrieved from a view as part of Activity.onProvideAssistData to generate additional virtual structure under this view.

ContentInfo onReceiveContent(ContentInfo payload)

Implements the default behavior for receiving content for this type of view.

PointerIcon onResolvePointerIcon(MotionEvent event, int pointerIndex)

Resolve the pointer icon that should be used for specified pointer in the motion event.

void onRtlPropertiesChanged(int layoutDirection)

Called when any RTL property (layout direction or text direction or text alignment) has been changed.

void onScreenStateChanged(int screenState)

This method is called whenever the state of the screen this view is attached to changes.

void onScrollCaptureSearch(Rect localVisibleRect, Point windowOffset, Consumer<ScrollCaptureTarget> targets)

Called when scroll capture is requested, to search for appropriate content to scroll.

void onStartTemporaryDetach()

This is called when a container is going to temporarily detach a child, with ViewGroup.detachViewFromParent.

boolean onTouchEvent(MotionEvent event)

Implement this method to handle pointer events.

boolean onTrackballEvent(MotionEvent event)

Implement this method to handle trackball motion events.

void onViewTranslationResponse(ViewTranslationResponse response)

Called when the content from View.onCreateViewTranslationRequest had been translated by the TranslationService.

void onVirtualViewTranslationResponses(LongSparseArray<ViewTranslationResponse> response)

Called when the content from View.onCreateVirtualViewTranslationRequests had been translated by the TranslationService.

void onVisibilityAggregated(boolean isVisible)

Called when the user-visibility of this View is potentially affected by a change to this view itself, an ancestor view or the window this view is attached to.

void onWindowFocusChanged(boolean hasWindowFocus)

Called when the window containing this view gains or loses focus.

void onWindowSystemUiVisibilityChanged(int visible)

This method was deprecated in API level 30. SystemUiVisibility flags are deprecated. Use WindowInsetsController instead.

boolean performAccessibilityAction(int action, Bundle arguments)

Performs the specified accessibility action on the view.

boolean performClick()

Call this view's OnClickListener, if it is defined.

boolean performContextClick(float x, float y)

Call this view's OnContextClickListener, if it is defined.

boolean performContextClick()

Call this view's OnContextClickListener, if it is defined.

boolean performHapticFeedback(int feedbackConstant)

BZZZTT!!1!

Provide haptic feedback to the user for this view.

boolean performHapticFeedback(int feedbackConstant, int flags)

BZZZTT!!1!

Like performHapticFeedback(int), with additional options.

boolean performLongClick(float x, float y)

Calls this view's OnLongClickListener, if it is defined.

boolean performLongClick()

Calls this view's OnLongClickListener, if it is defined.

ContentInfo performReceiveContent(ContentInfo payload)

Receives the given content.

void playSoundEffect(int soundConstant)

Play a sound effect for this view.

boolean post(Runnable action)

Causes the Runnable to be added to the message queue.

boolean postDelayed(Runnable action, long delayMillis)

Causes the Runnable to be added to the message queue, to be run after the specified amount of time elapses.

void postInvalidate()

Cause an invalidate to happen on a subsequent cycle through the event loop.

void postInvalidate(int left, int top, int right, int bottom)

Cause an invalidate of the specified area to happen on a subsequent cycle through the event loop.

void postInvalidateDelayed(long delayMilliseconds, int left, int top, int right, int bottom)

Cause an invalidate of the specified area to happen on a subsequent cycle through the event loop.

void postInvalidateDelayed(long delayMilliseconds)

Cause an invalidate to happen on a subsequent cycle through the event loop.

void postInvalidateOnAnimation(int left, int top, int right, int bottom)

Cause an invalidate of the specified area to happen on the next animation time step, typically the next display frame.

void postInvalidateOnAnimation()

Cause an invalidate to happen on the next animation time step, typically the next display frame.

void postOnAnimation(Runnable action)

Causes the Runnable to execute on the next animation time step.

void postOnAnimationDelayed(Runnable action, long delayMillis)

Causes the Runnable to execute on the next animation time step, after the specified amount of time elapses.

void refreshDrawableState()

Call this to force a view to update its drawable state.

void releasePointerCapture()

Releases the pointer capture.

boolean removeCallbacks(Runnable action)

Removes the specified Runnable from the message queue.

void removeOnAttachStateChangeListener(View.OnAttachStateChangeListener listener)

Remove a listener for attach state changes.

void removeOnLayoutChangeListener(View.OnLayoutChangeListener listener)

Remove a listener for layout changes.

void removeOnUnhandledKeyEventListener(View.OnUnhandledKeyEventListener listener)

Removes a listener which will receive unhandled KeyEvents.

void reportAppJankStats(AppJankStats appJankStats)

Called from apps when they want to report jank stats to the system.

void requestApplyInsets()

Ask that a new dispatch of onApplyWindowInsets(android.view.WindowInsets) be performed.

void requestFitSystemWindows()

This method was deprecated in API level 20. Use requestApplyInsets() for newer platform versions.

final boolean requestFocus(int direction)

Call this to try to give focus to a specific view or to one of its descendants and give it a hint about what direction focus is heading.

final boolean requestFocus()

Call this to try to give focus to a specific view or to one of its descendants.

boolean requestFocus(int direction, Rect previouslyFocusedRect)

Call this to try to give focus to a specific view or to one of its descendants and give it hints about the direction and a specific rectangle that the focus is coming from.

final boolean requestFocusFromTouch()

Call this to try to give focus to a specific view or to one of its descendants.

void requestLayout()

Call this when something has changed which has invalidated the layout of this view.

void requestPointerCapture()

Requests pointer capture mode.

boolean requestRectangleOnScreen(Rect rectangle)

Request that a rectangle of this view be visible on the screen, scrolling if necessary just enough.

boolean requestRectangleOnScreen(Rect rectangle, boolean immediate)

Request that a rectangle of this view be visible on the screen, scrolling if necessary just enough.

final void requestUnbufferedDispatch(int source)

Request unbuffered dispatch of the given event source class to this view.

final void requestUnbufferedDispatch(MotionEvent event)

Request unbuffered dispatch of the given stream of MotionEvents to this View.

final <T extends View> T requireViewById(int id)

Finds the first descendant view with the given ID, the view itself if the ID matches getId(), or throws an IllegalArgumentException if the ID is invalid or there is no matching view in the hierarchy.

void resetPivot()

Clears any pivot previously set by a call to setPivotX(float) or setPivotY(float).

static int resolveSize(int size, int measureSpec)

Version of resolveSizeAndState(int, int, int) returning only the MEASURED_SIZE_MASK bits of the result.

static int resolveSizeAndState(int size, int measureSpec, int childMeasuredState)

Utility to reconcile a desired size and state, with constraints imposed by a MeasureSpec.

boolean restoreDefaultFocus()

Gives focus to the default-focus view in the view hierarchy that has this view as a root.

void restoreHierarchyState(SparseArray<Parcelable> container)

Restore this view hierarchy's frozen state from the given container.

final void saveAttributeDataForStyleable(Context context, int[] styleable, AttributeSet attrs, TypedArray t, int defStyleAttr, int defStyleRes)

Stores debugging information about attributes.

void saveHierarchyState(SparseArray<Parcelable> container)

Store this view hierarchy's frozen state into the given container.

void scheduleDrawable(Drawable who, Runnable what, long when)

Schedules an action on a drawable to occur at a specified time.

void scrollBy(int x, int y)

Move the scrolled position of your view.

void scrollTo(int x, int y)

Set the scrolled position of your view.

void sendAccessibilityEvent(int eventType)

Sends an accessibility event of the given type.

void sendAccessibilityEventUnchecked(AccessibilityEvent event)

This method behaves exactly as sendAccessibilityEvent(int) but takes as an argument an empty AccessibilityEvent and does not perform a check whether accessibility is enabled.

void setAccessibilityDataSensitive(int accessibilityDataSensitive)

Specifies whether this view should only allow interactions from AccessibilityServices with the AccessibilityServiceInfo.isAccessibilityTool() property set to true.

void setAccessibilityDelegate(View.AccessibilityDelegate delegate)

Sets a delegate for implementing accessibility support via composition (as opposed to inheritance).

void setAccessibilityHeading(boolean isHeading)

Set if view is a heading for a section of content for accessibility purposes.

void setAccessibilityLiveRegion(int mode)

Sets the live region mode for this view.

void setAccessibilityPaneTitle(CharSequence accessibilityPaneTitle)

Visually distinct portion of a window with window-like semantics are considered panes for accessibility purposes.

void setAccessibilityTraversalAfter(int afterId)

Sets the id of a view that screen readers are requested to visit before this view.

void setAccessibilityTraversalBefore(int beforeId)

Sets the id of a view that screen readers are requested to visit after this view.

void setActivated(boolean activated)

Changes the activated state of this view.

void setAllowClickWhenDisabled(boolean clickableWhenDisabled)

Enables or disables click events for this view when disabled.

void setAllowedHandwritingDelegatePackage(String allowedPackageName)

Specifies that this view may act as a handwriting initiation delegator for a delegate editor view from the specified package.

void setAllowedHandwritingDelegatorPackage(String allowedPackageName)

Specifies that a view from the specified package may act as a handwriting delegator for this delegate editor view.

void setAlpha(float alpha)

Sets the opacity of the view to a value from 0 to 1, where 0 means the view is completely transparent and 1 means the view is completely opaque.

void setAnimation(Animation animation)

Sets the next animation to play for this view.

void setAnimationMatrix(Matrix matrix)

Changes the transformation matrix on the view.

void setAutoHandwritingEnabled(boolean enabled)

Set whether this view enables automatic handwriting initiation.

void setAutofillHints(String... autofillHints)

Sets the hints that help an AutofillService determine how to autofill the view with the user's data.

void setAutofillId(AutofillId id)

Sets the unique, logical identifier of this view in the activity, for autofill purposes.

void setBackground(Drawable background)

Set the background to a given Drawable, or remove the background.

void setBackgroundColor(int color)

Sets the background color for this view.

void setBackgroundDrawable(Drawable background)

This method was deprecated in API level 16. use setBackground(android.graphics.drawable.Drawable) instead

void setBackgroundResource(int resid)

Set the background to a given resource.

void setBackgroundTintBlendMode(BlendMode blendMode)

Specifies the blending mode used to apply the tint specified by setBackgroundTintList(android.content.res.ColorStateList)} to the background drawable.

void setBackgroundTintList(ColorStateList tint)

Applies a tint to the background drawable.

void setBackgroundTintMode(PorterDuff.Mode tintMode)

Specifies the blending mode used to apply the tint specified by setBackgroundTintList(android.content.res.ColorStateList)} to the background drawable.

final void setBottom(int bottom)

Sets the bottom position of this view relative to its parent.

void setCameraDistance(float distance)

Sets the distance along the Z axis (orthogonal to the X/Y plane on which views are drawn) from the camera to this view.

void setClickable(boolean clickable)

Enables or disables click events for this view.

void setClipBounds(Rect clipBounds)

Sets a rectangular area on this view to which the view will be clipped when it is drawn.

void setClipToOutline(boolean clipToOutline)

Sets whether the View's Outline should be used to clip the contents of the View.

void setContentCaptureSession(ContentCaptureSession contentCaptureSession)

Sets the (optional) ContentCaptureSession associated with this view.

void setContentDescription(CharSequence contentDescription)

Sets the View's content description.

final void setContentSensitivity(int mode)

Sets content sensitivity mode to determine whether this view displays sensitive content (e.g. username, password etc.).

void setContextClickable(boolean contextClickable)

Enables or disables context clicking for this view.

void setDefaultFocusHighlightEnabled(boolean defaultFocusHighlightEnabled)

Sets whether this View should use a default focus highlight when it gets focused but doesn't have R.attr.state_focused defined in its background.

void setDrawingCacheBackgroundColor(int color)

This method was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

void setDrawingCacheEnabled(boolean enabled)

This method was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

void setDrawingCacheQuality(int quality)

This method was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

void setDuplicateParentStateEnabled(boolean enabled)

Enables or disables the duplication of the parent's state into this view.

void setElevation(float elevation)

Sets the base elevation of this view, in pixels.

void setEnabled(boolean enabled)

Set the enabled state of this view.

void setFadingEdgeLength(int length)

Set the size of the faded edge used to indicate that more content in this view is available.

void setFilterTouchesWhenObscured(boolean enabled)

Sets whether the framework should discard touches when the view's window is obscured by another visible window at the touched location.

void setFitsSystemWindows(boolean fitSystemWindows)

Sets whether or not this view should account for system screen decorations such as the status bar and inset its content; that is, controlling whether the default implementation of fitSystemWindows(android.graphics.Rect) will be executed.

void setFocusable(boolean focusable)

Set whether this view can receive the focus.

void setFocusable(int focusable)

Sets whether this view can receive focus.

void setFocusableInTouchMode(boolean focusableInTouchMode)

Set whether this view can receive focus while in touch mode.

void setFocusedByDefault(boolean isFocusedByDefault)

Sets whether this View should receive focus when the focus is restored for the view hierarchy containing this view.

void setForceDarkAllowed(boolean allow)

Sets whether or not to allow force dark to apply to this view.

void setForeground(Drawable foreground)

Supply a Drawable that is to be rendered on top of all of the content in the view.

void setForegroundGravity(int gravity)

Describes how the foreground is positioned.

void setForegroundTintBlendMode(BlendMode blendMode)

Specifies the blending mode used to apply the tint specified by setForegroundTintList(android.content.res.ColorStateList)} to the background drawable.

void setForegroundTintList(ColorStateList tint)

Applies a tint to the foreground drawable.

void setForegroundTintMode(PorterDuff.Mode tintMode)

Specifies the blending mode used to apply the tint specified by setForegroundTintList(android.content.res.ColorStateList)} to the background drawable.

void setFrameContentVelocity(float pixelsPerSecond)

Set the current velocity of the View, we only track positive value.

void setHandwritingBoundsOffsets(float offsetLeft, float offsetTop, float offsetRight, float offsetBottom)

Set the amount of offset applied to this view's stylus handwriting bounds.

void setHandwritingDelegateFlags(int flags)

Sets flags configuring the handwriting delegation behavior for this delegate editor view.

void setHandwritingDelegatorCallback(Runnable callback)

Sets a callback which should be called when a stylus MotionEvent occurs within this view's bounds.

void setHapticFeedbackEnabled(boolean hapticFeedbackEnabled)

Set whether this view should have haptic feedback for events such as long presses.

void setHasTransientState(boolean hasTransientState)

Set whether this view is currently tracking transient state that the framework should attempt to preserve when possible.

void setHorizontalFadingEdgeEnabled(boolean horizontalFadingEdgeEnabled)

Define whether the horizontal edges should be faded when this view is scrolled horizontally.

void setHorizontalScrollBarEnabled(boolean horizontalScrollBarEnabled)

Define whether the horizontal scrollbar should be drawn or not.

void setHorizontalScrollbarThumbDrawable(Drawable drawable)

Defines the horizontal thumb drawable

void setHorizontalScrollbarTrackDrawable(Drawable drawable)

Defines the horizontal track drawable

void setHovered(boolean hovered)

Sets whether the view is currently hovered.

void setId(int id)

Sets the identifier for this view.

void setImportantForAccessibility(int mode)

Sets how to determine whether this view is important for accessibility which is if it fires accessibility events and if it is reported to accessibility services that query the screen.

void setImportantForAutofill(int mode)

Sets the mode for determining whether this view is considered important for autofill.

void setImportantForContentCapture(int mode)

Sets the mode for determining whether this view is considered important for content capture.

void setIsCredential(boolean isCredential)

Sets whether this view is a credential for Credential Manager purposes.

void setIsHandwritingDelegate(boolean isHandwritingDelegate)

Sets this view to be a handwriting delegate.

void setKeepScreenOn(boolean keepScreenOn)

Controls whether the screen should remain on, modifying the value of KEEP_SCREEN_ON.

void setKeyboardNavigationCluster(boolean isCluster)

Set whether this view is a root of a keyboard navigation cluster.

void setLabelFor(int id)

Sets the id of a view for which this view serves as a label for accessibility purposes.

void setLayerPaint(Paint paint)

Updates the Paint object used with the current layer (used only if the current layer type is not set to LAYER_TYPE_NONE).

void setLayerType(int layerType, Paint paint)

Specifies the type of layer backing this view.

void setLayoutDirection(int layoutDirection)

Set the layout direction for this view.

void setLayoutParams(ViewGroup.LayoutParams params)

Set the layout parameters associated with this view.

final void setLeft(int left)

Sets the left position of this view relative to its parent.

final void setLeftTopRightBottom(int left, int top, int right, int bottom)

Assign a size and position to this view.

void setLongClickable(boolean longClickable)

Enables or disables long click events for this view.

void setMinimumHeight(int minHeight)

Sets the minimum height of the view.

void setMinimumWidth(int minWidth)

Sets the minimum width of the view.

void setNestedScrollingEnabled(boolean enabled)

Enable or disable nested scrolling for this view.

void setNextClusterForwardId(int nextClusterForwardId)

Sets the id of the view to use as the root of the next keyboard navigation cluster.

void setNextFocusDownId(int nextFocusDownId)

Sets the id of the view to use when the next focus is FOCUS_DOWN.

void setNextFocusForwardId(int nextFocusForwardId)

Sets the id of the view to use when the next focus is FOCUS_FORWARD.

void setNextFocusLeftId(int nextFocusLeftId)

Sets the id of the view to use when the next focus is FOCUS_LEFT.

void setNextFocusRightId(int nextFocusRightId)

Sets the id of the view to use when the next focus is FOCUS_RIGHT.

void setNextFocusUpId(int nextFocusUpId)

Sets the id of the view to use when the next focus is FOCUS_UP.

void setOnApplyWindowInsetsListener(View.OnApplyWindowInsetsListener listener)

Set an OnApplyWindowInsetsListener to take over the policy for applying window insets to this view.

void setOnCapturedPointerListener(View.OnCapturedPointerListener l)

Set a listener to receive callbacks when the pointer capture state of a view changes.

void setOnClickListener(View.OnClickListener l)

Register a callback to be invoked when this view is clicked.

void setOnContextClickListener(View.OnContextClickListener l)

Register a callback to be invoked when this view is context clicked.

void setOnCreateContextMenuListener(View.OnCreateContextMenuListener l)

Register a callback to be invoked when the context menu for this view is being built.

void setOnDragListener(View.OnDragListener l)

Register a drag event listener callback object for this View.

void setOnFocusChangeListener(View.OnFocusChangeListener l)

Register a callback to be invoked when focus of this view changed.

void setOnGenericMotionListener(View.OnGenericMotionListener l)

Register a callback to be invoked when a generic motion event is sent to this view.

void setOnHoverListener(View.OnHoverListener l)

Register a callback to be invoked when a hover event is sent to this view.

void setOnKeyListener(View.OnKeyListener l)

Register a callback to be invoked when a hardware key is pressed in this view.

void setOnLongClickListener(View.OnLongClickListener l)

Register a callback to be invoked when this view is clicked and held.

void setOnReceiveContentListener(String[] mimeTypes, OnReceiveContentListener listener)

Sets the listener to be used to handle insertion of content into this view.

void setOnScrollChangeListener(View.OnScrollChangeListener l)

Register a callback to be invoked when the scroll X or Y positions of this view change.

void setOnSystemUiVisibilityChangeListener(View.OnSystemUiVisibilityChangeListener l)

This method was deprecated in API level 30. Use WindowInsets.isVisible(int) to find out about system bar visibilities by setting a OnApplyWindowInsetsListener on this view.

void setOnTouchListener(View.OnTouchListener l)

Register a callback to be invoked when a touch event is sent to this view.

void setOutlineAmbientShadowColor(int color)

Sets the color of the ambient shadow that is drawn when the view has a positive Z or elevation value.

void setOutlineProvider(ViewOutlineProvider provider)

Sets the ViewOutlineProvider of the view, which generates the Outline that defines the shape of the shadow it casts, and enables outline clipping.

void setOutlineSpotShadowColor(int color)

Sets the color of the spot shadow that is drawn when the view has a positive Z or elevation value.

void setOverScrollMode(int overScrollMode)

Set the over-scroll mode for this view.

void setPadding(int left, int top, int right, int bottom)

Sets the padding.

void setPaddingRelative(int start, int top, int end, int bottom)

Sets the relative padding.

void setPendingCredentialRequest(GetCredentialRequest request, OutcomeReceiver<GetCredentialResponseGetCredentialException> callback)

Sets a CredentialManager request to retrieve credentials, when the user focuses on this given view.

void setPivotX(float pivotX)

Sets the x location of the point around which the view is rotated and scaled.

void setPivotY(float pivotY)

Sets the y location of the point around which the view is rotated and scaled.

void setPointerIcon(PointerIcon pointerIcon)

Set the pointer icon to be used for a mouse pointer in the current view.

final void setPreferKeepClear(boolean preferKeepClear)

Set a preference to keep the bounds of this view clear from floating windows above this view's window.

final void setPreferKeepClearRects(List<Rect> rects)

Set a preference to keep the provided rects clear from floating windows above this view's window.

void setPressed(boolean pressed)

Sets the pressed state for this view.

void setRenderEffect(RenderEffect renderEffect)

Configure the RenderEffect to apply to this View.

void setRequestedFrameRate(float frameRate)

You can set the preferred frame rate for a View using a positive number or by specifying the preferred frame rate category using constants, including REQUESTED_FRAME_RATE_CATEGORY_NO_PREFERENCE, REQUESTED_FRAME_RATE_CATEGORY_LOW, REQUESTED_FRAME_RATE_CATEGORY_NORMAL, REQUESTED_FRAME_RATE_CATEGORY_HIGH.

final void setRevealOnFocusHint(boolean revealOnFocus)

Sets this view's preference for reveal behavior when it gains focus.

final void setRight(int right)

Sets the right position of this view relative to its parent.

void setRotation(float rotation)

Sets the degrees that the view is rotated around the pivot point.

void setRotationX(float rotationX)

Sets the degrees that the view is rotated around the horizontal axis through the pivot point.

void setRotationY(float rotationY)

Sets the degrees that the view is rotated around the vertical axis through the pivot point.

void setSaveEnabled(boolean enabled)

Controls whether the saving of this view's state is enabled (that is, whether its onSaveInstanceState() method will be called).

void setSaveFromParentEnabled(boolean enabled)

Controls whether the entire hierarchy under this view will save its state when a state saving traversal occurs from its parent.

void setScaleX(float scaleX)

Sets the amount that the view is scaled in x around the pivot point, as a proportion of the view's unscaled width.

void setScaleY(float scaleY)

Sets the amount that the view is scaled in Y around the pivot point, as a proportion of the view's unscaled width.

void setScreenReaderFocusable(boolean screenReaderFocusable)

Sets whether this View should be a focusable element for screen readers and include non-focusable Views from its subtree when providing feedback.

void setScrollBarDefaultDelayBeforeFade(int scrollBarDefaultDelayBeforeFade)

Define the delay before scrollbars fade.

void setScrollBarFadeDuration(int scrollBarFadeDuration)

Define the scrollbar fade duration.

void setScrollBarSize(int scrollBarSize)

Define the scrollbar size.

void setScrollBarStyle(int style)

Specify the style of the scrollbars.

final void setScrollCaptureCallback(ScrollCaptureCallback callback)

Sets the callback to receive scroll capture requests.

void setScrollCaptureHint(int hint)

Sets the scroll capture hint for this View.

void setScrollContainer(boolean isScrollContainer)

Change whether this view is one of the set of scrollable containers in its window.

void setScrollIndicators(int indicators, int mask)

Sets the state of the scroll indicators specified by the mask.

void setScrollIndicators(int indicators)

Sets the state of all scroll indicators.

void setScrollX(int value)

Set the horizontal scrolled position of your view.

void setScrollY(int value)

Set the vertical scrolled position of your view.

void setScrollbarFadingEnabled(boolean fadeScrollbars)

Define whether scrollbars will fade when the view is not scrolling.

void setSelected(boolean selected)

Changes the selection state of this view.

void setSoundEffectsEnabled(boolean soundEffectsEnabled)

Set whether this view should have sound effects enabled for events such as clicking and touching.

void setStateDescription(CharSequence stateDescription)

Sets the View's state description.

void setStateListAnimator(StateListAnimator stateListAnimator)

Attaches the provided StateListAnimator to this View.

void setSupplementalDescription(CharSequence supplementalDescription)

Sets the View's supplemental description.

void setSystemGestureExclusionRects(List<Rect> rects)

Sets a list of areas within this view's post-layout coordinate space where the system should not intercept touch or other pointing device gestures.

void setSystemUiVisibility(int visibility)

This method was deprecated in API level 30. SystemUiVisibility flags are deprecated. Use WindowInsetsController instead.

void setTag(int key, Object tag)

Sets a tag associated with this view and a key.

void setTag(Object tag)

Sets the tag associated with this view.

void setTextAlignment(int textAlignment)

Set the text alignment.

void setTextDirection(int textDirection)

Set the text direction.

void setTooltipText(CharSequence tooltipText)

Sets the tooltip text which will be displayed in a small popup next to the view.

final void setTop(int top)

Sets the top position of this view relative to its parent.

void setTouchDelegate(TouchDelegate delegate)

Sets the TouchDelegate for this View.

void setTransitionAlpha(float alpha)

This property is intended only for use by the Fade transition, which animates it to produce a visual translucency that does not side-effect (or get affected by) the real alpha property.

final void setTransitionName(String transitionName)

Sets the name of the View to be used to identify Views in Transitions.

void setTransitionVisibility(int visibility)

Changes the visibility of this View without triggering any other changes.

void setTranslationX(float translationX)

Sets the horizontal location of this view relative to its left position.

void setTranslationY(float translationY)

Sets the vertical location of this view relative to its top position.

void setTranslationZ(float translationZ)

Sets the depth location of this view relative to its elevation.

void setVerticalFadingEdgeEnabled(boolean verticalFadingEdgeEnabled)

Define whether the vertical edges should be faded when this view is scrolled vertically.

void setVerticalScrollBarEnabled(boolean verticalScrollBarEnabled)

Define whether the vertical scrollbar should be drawn or not.

void setVerticalScrollbarPosition(int position)

Set the position of the vertical scroll bar.

void setVerticalScrollbarThumbDrawable(Drawable drawable)

Defines the vertical scrollbar thumb drawable

void setVerticalScrollbarTrackDrawable(Drawable drawable)

Defines the vertical scrollbar track drawable

void setViewTranslationCallback(ViewTranslationCallback callback)

Sets a ViewTranslationCallback that is used to display/hide the translated information.

void setVisibility(int visibility)

Set the visibility state of this view.

void setWillNotCacheDrawing(boolean willNotCacheDrawing)

This method was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

void setWillNotDraw(boolean willNotDraw)

If this view doesn't do any drawing on its own, set this flag to allow further optimizations.

void setWindowInsetsAnimationCallback(WindowInsetsAnimation.Callback callback)

Sets a WindowInsetsAnimation.Callback to be notified about animations of windows that cause insets.

void setX(float x)

Sets the visual x position of this view, in pixels.

void setY(float y)

Sets the visual y position of this view, in pixels.

void setZ(float z)

Sets the visual z position of this view, in pixels.

boolean showContextMenu()

Shows the context menu for this view.

boolean showContextMenu(float x, float y)

Shows the context menu for this view anchored to the specified view-relative coordinate.

ActionMode startActionMode(ActionMode.Callback callback, int type)

Start an action mode with the given type.

ActionMode startActionMode(ActionMode.Callback callback)

Start an action mode with the default type ActionMode.TYPE_PRIMARY.

void startAnimation(Animation animation)

Start the specified animation now.

final boolean startDrag(ClipData data, View.DragShadowBuilder shadowBuilder, Object myLocalState, int flags)

This method was deprecated in API level 24. Use startDragAndDrop() for newer platform versions.

final boolean startDragAndDrop(ClipData data, View.DragShadowBuilder shadowBuilder, Object myLocalState, int flags)

Starts a drag and drop operation.

boolean startNestedScroll(int axes)

Begin a nestable scroll operation along the given axes.

void stopNestedScroll()

Stop a nested scroll in progress.

String toString()

Returns a string representation of the object.

void transformMatrixToGlobal(Matrix matrix)

Modifies the input matrix such that it maps view-local coordinates to on-screen coordinates.

void transformMatrixToLocal(Matrix matrix)

Modifies the input matrix such that it maps on-screen coordinates to view-local coordinates.

void unscheduleDrawable(Drawable who, Runnable what)

Cancels a scheduled action on a drawable.

void unscheduleDrawable(Drawable who)

Unschedule any events associated with the given Drawable.

final void updateDragShadow(View.DragShadowBuilder shadowBuilder)

Updates the drag shadow for the ongoing drag and drop operation.

boolean willNotCacheDrawing()

This method was deprecated in API level 28. The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

boolean willNotDraw()

Returns whether or not this View draws on its own.

Protected methods

boolean awakenScrollBars(int startDelay, boolean invalidate)

Trigger the scrollbars to draw.

boolean awakenScrollBars(int startDelay)

Trigger the scrollbars to draw.

boolean awakenScrollBars()

Trigger the scrollbars to draw.

int computeHorizontalScrollExtent()

Compute the horizontal extent of the horizontal scrollbar's thumb within the horizontal range.

int computeHorizontalScrollOffset()

Compute the horizontal offset of the horizontal scrollbar's thumb within the horizontal range.

int computeHorizontalScrollRange()

Compute the horizontal range that the horizontal scrollbar represents.

int computeVerticalScrollExtent()

Compute the vertical extent of the vertical scrollbar's thumb within the vertical range.

int computeVerticalScrollOffset()

Compute the vertical offset of the vertical scrollbar's thumb within the horizontal range.

int computeVerticalScrollRange()

Compute the vertical range that the vertical scrollbar represents.

void dispatchDraw(Canvas canvas)

Called by draw to draw the child views.

boolean dispatchGenericFocusedEvent(MotionEvent event)

Dispatch a generic motion event to the currently focused view.

boolean dispatchGenericPointerEvent(MotionEvent event)

Dispatch a generic motion event to the view under the first pointer.

boolean dispatchHoverEvent(MotionEvent event)

Dispatch a hover event.

void dispatchRestoreInstanceState(SparseArray<Parcelable> container)

Called by restoreHierarchyState(android.util.SparseArray) to retrieve the state for this view and its children.

void dispatchSaveInstanceState(SparseArray<Parcelable> container)

Called by saveHierarchyState(android.util.SparseArray) to store the state for this view and its children.

void dispatchSetActivated(boolean activated)

Dispatch setActivated to all of this View's children.

void dispatchSetPressed(boolean pressed)

Dispatch setPressed to all of this View's children.

void dispatchSetSelected(boolean selected)

Dispatch setSelected to all of this View's children.

void dispatchVisibilityChanged(View changedView, int visibility)

Dispatch a view visibility change down the view hierarchy.

void drawableStateChanged()

This function is called whenever the state of the view changes in such a way that it impacts the state of drawables being shown.

boolean fitSystemWindows(Rect insets)

This method was deprecated in API level 20. As of API 20 use dispatchApplyWindowInsets(android.view.WindowInsets) to apply insets to views. Views should override onApplyWindowInsets(android.view.WindowInsets) or use setOnApplyWindowInsetsListener(android.view.View.OnApplyWindowInsetsListener) to implement handling their own insets.

float getBottomFadingEdgeStrength()

Returns the strength, or intensity, of the bottom faded edge.

int getBottomPaddingOffset()

Amount by which to extend the bottom fading region.

ContextMenu.ContextMenuInfo getContextMenuInfo()

Views should implement this if they have extra information to associate with the context menu.

int getHorizontalScrollbarHeight()

Returns the height of the horizontal scrollbar.

float getLeftFadingEdgeStrength()

Returns the strength, or intensity, of the left faded edge.

int getLeftPaddingOffset()

Amount by which to extend the left fading region.

float getRightFadingEdgeStrength()

Returns the strength, or intensity, of the right faded edge.

int getRightPaddingOffset()

Amount by which to extend the right fading region.

int getSuggestedMinimumHeight()

Returns the suggested minimum height that the view should use.

int getSuggestedMinimumWidth()

Returns the suggested minimum width that the view should use.

float getTopFadingEdgeStrength()

Returns the strength, or intensity, of the top faded edge.

int getTopPaddingOffset()

Amount by which to extend the top fading region.

int getWindowAttachCount()
boolean isPaddingOffsetRequired()

If the View draws content inside its padding and enables fading edges, it needs to support padding offsets.

static int[] mergeDrawableStates(int[] baseState, int[] additionalState)

Merge your own state values in additionalState into the base state values baseState that were returned by onCreateDrawableState(int).

void onAnimationEnd()

Invoked by a parent ViewGroup to notify the end of the animation currently associated with this view.

void onAnimationStart()

Invoked by a parent ViewGroup to notify the start of the animation currently associated with this view.

void onAttachedToWindow()

This is called when the view is attached to a window.

void onConfigurationChanged(Configuration newConfig)

Called when the current configuration of the resources being used by the application have changed.

void onCreateContextMenu(ContextMenu menu)

Views should implement this if the view itself is going to add items to the context menu.

int[] onCreateDrawableState(int extraSpace)

Generate the new Drawable state for this view.

void onDetachedFromWindow()

This is called when the view is detached from a window.

void onDisplayHint(int hint)

Gives this view a hint about whether is displayed or not.

void onDraw(Canvas canvas)

Implement this to do your drawing.

final void onDrawScrollBars(Canvas canvas)

Request the drawing of the horizontal and the vertical scrollbar.

void onFinishInflate()

Finalize inflating a view from XML.

void onFocusChanged(boolean gainFocus, int direction, Rect previouslyFocusedRect)

Called by the view system when the focus state of this view changes.

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

Called from layout when this view should assign a size and position to each of its children.

void onMeasure(int widthMeasureSpec, int heightMeasureSpec)

Measure the view and its content to determine the measured width and the measured height.

void onOverScrolled(int scrollX, int scrollY, boolean clampedX, boolean clampedY)

Called by overScrollBy(int, int, int, int, int, int, int, int, boolean) to respond to the results of an over-scroll operation.

void onRestoreInstanceState(Parcelable state)

Hook allowing a view to re-apply a representation of its internal state that had previously been generated by onSaveInstanceState().

Parcelable onSaveInstanceState()

Hook allowing a view to generate a representation of its internal state that can later be used to create a new instance with that same state.

void onScrollChanged(int l, int t, int oldl, int oldt)

This is called in response to an internal scroll in this view (i.e., the view scrolled its own contents).

boolean onSetAlpha(int alpha)

Invoked if there is a Transform that involves alpha.

void onSizeChanged(int w, int h, int oldw, int oldh)

This is called during layout when the size of this view has changed.

void onVisibilityChanged(View changedView, int visibility)

Called when the visibility of the view or an ancestor of the view has changed.

void onWindowVisibilityChanged(int visibility)

Called when the window containing has change its visibility (between GONE, INVISIBLE, and VISIBLE).

boolean overScrollBy(int deltaX, int deltaY, int scrollX, int scrollY, int scrollRangeX, int scrollRangeY, int maxOverScrollX, int maxOverScrollY, boolean isTouchEvent)

Scroll the view with standard behavior for scrolling beyond the normal content boundaries.

final void setMeasuredDimension(int measuredWidth, int measuredHeight)

This method must be called by onMeasure(int, int) to store the measured width and measured height.

boolean verifyDrawable(Drawable who)

If your view subclass is displaying its own Drawable objects, it should override this function and return true for any Drawable it is displaying.

Inherited methods

XML attributes

android:accessibilityHeading

Whether or not this view is a heading for accessibility purposes.

May be a boolean value, such as "true" or "false".

Related methods:

android:accessibilityLiveRegion

Indicates to accessibility services whether the user should be notified when this view changes.

May be an integer value, such as "100".

Must be one of the following constant values.

ConstantValueDescription
assertive2Accessibility services should interrupt ongoing speech to immediately announce changes to this view.
none0Accessibility services should not announce changes to this view.
polite1Accessibility services should announce changes to this view.

Related methods:

android:accessibilityPaneTitle

The title this view should present to accessibility as a pane title. See View.setAccessibilityPaneTitle(CharSequence)

May be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character;

Related methods:

android:accessibilityTraversalAfter

Sets the id of a view that screen readers are requested to visit before this view. Requests that a screen-reader visits the content of the other view before the content of this one. This does nothing if either view is not important for accessibility.

May be an integer value, such as "100".

Related methods:

android:accessibilityTraversalBefore

Sets the id of a view that screen readers are requested to visit after this view. Requests that a screen-reader visits the content of this view before the content of the one it precedes. This does nothing if either view is not important for accessibility.

May be an integer value, such as "100".

Related methods:

android:allowClickWhenDisabled

Whether or not allow clicks on disabled view.

May be a boolean value, such as "true" or "false".

Related methods:

android:alpha

alpha property of the view, as a value between 0 (completely transparent) and 1 (completely opaque).

May be a floating point value, such as "1.2".

Related methods:

android:autoHandwritingEnabled

Whether or not the auto handwriting initiation is enabled in this View.

For a view with an active InputConnection, if auto handwriting initiation is enabled, stylus movement within its view boundary will automatically trigger the handwriting mode. See View.setAutoHandwritingEnabled(boolean).

The default value of this flag is configurable by the device manufacturer.

May be a boolean value, such as "true" or "false".

Related methods:

android:autofillHints

Describes the content of a view so that a autofill service can fill in the appropriate data. Multiple hints can be combined in a comma separated list or an array of strings to mean e.g. emailAddress or postalAddress.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

May be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character;

Related methods:

android:autofilledHighlight

Drawable to be drawn over the view to mark it as autofilled

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

Related methods:

android:background

A drawable to use as the background. This can be either a reference to a full drawable resource (such as a PNG image, 9-patch, XML state list description, etc), or a solid color such as "#ff000000" (black).

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

May be a color value, in the form of "#rgb", "#argb", "#rrggbb", or "#aarrggbb".

Related methods:

android:backgroundTint

Tint to apply to the background.

May be a color value, in the form of "#rgb", "#argb", "#rrggbb", or "#aarrggbb".

Related methods:

android:backgroundTintMode

Blending mode used to apply the background tint.

Must be one of the following constant values.

ConstantValueDescription
add10Combines the tint and drawable color and alpha channels, clamping the result to valid color values. Saturate(S + D)
multiplyeMultiplies the color and alpha channels of the drawable with those of the tint. [Sa * Da, Sc * Dc]
screenf[Sa + Da - Sa * Da, Sc + Dc - Sc * Dc]
src_atop9The tint is drawn above the drawable, but with the drawable\u2019s alpha channel masking the result. [Da, Sc * Da + (1 - Sa) * Dc]
src_in5The tint is masked by the alpha channel of the drawable. The drawable\u2019s color channels are thrown out. [Sa * Da, Sc * Da]
src_over3The tint is drawn on top of the drawable. [Sa + (1 - Sa)*Da, Rc = Sc + (1 - Sa)*Dc]

Related methods:

android:clickable

Defines whether this view reacts to click events.

May be a boolean value, such as "true" or "false".

Related methods:

android:clipToOutline

Whether the View's Outline should be used to clip the contents of the View.

Only a single non-rectangular clip can be applied on a View at any time. Circular clips from a ViewAnimationUtils.createCircularReveal(View, int, int, float, float) circular reveal animation take priority over Outline clipping, and child Outline clipping takes priority over Outline clipping done by a parent.

Note that this flag will only be respected if the View's Outline returns true from Outline.canClip().

May be a boolean value, such as "true" or "false".

Related methods:

android:contentDescription

Defines text that briefly describes content of the view. This property is used primarily for accessibility. Since some views do not have textual representation this attribute can be used for providing such.

May be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character;

Related methods:

android:contextClickable

Defines whether this view reacts to context click events.

May be a boolean value, such as "true" or "false".

Related methods:

android:defaultFocusHighlightEnabled

Whether this View should use a default focus highlight when it gets focused but doesn't have R.attr.state_focused defined in its background.

May be a boolean value, such as "true" or "false".

Related methods:

android:drawingCacheQuality

Defines the quality of translucent drawing caches. This property is used only when the drawing cache is enabled and translucent. The default value is auto. Deprecated: The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11.

Must be one of the following constant values.

ConstantValueDescription
auto0Lets the framework decide what quality level should be used for the drawing cache. Deprecated: The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11.
high2High quality. When set to high quality, the drawing cache uses a higher color depth but uses more memory. Deprecated: The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11.
low1Low quality. When set to low quality, the drawing cache uses a lower color depth, thus losing precision in rendering gradients, but uses less memory. Deprecated: The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11.

Related methods:

android:duplicateParentState

When this attribute is set to true, the view gets its drawable state (focused, pressed, etc.) from its direct parent rather than from itself.

May be a boolean value, such as "true" or "false".

android:elevation

base z depth of the view.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:fadeScrollbars

Defines whether to fade out scrollbars when they are not in use.

May be a boolean value, such as "true" or "false".

Related methods:

android:fadingEdgeLength

Defines the length of the fading edges.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:filterTouchesWhenObscured

Specifies whether to filter touches when the view's window is obscured by another visible window. When set to true, the view will not receive touches whenever a toast, dialog or other window appears above the view's window. Refer to the View security documentation for more details.

May be a boolean value, such as "true" or "false".

Related methods:

android:fitsSystemWindows

Boolean internal attribute to adjust view layout based on system windows such as the status bar. If true, adjusts the padding of this view to leave space for the system windows. Will only take effect if this view is in a non-embedded activity.

May be a boolean value, such as "true" or "false".

Related methods:

android:focusable

Controls whether a view can take focus. By default, this is "auto" which lets the framework determine whether a user can move focus to a view. By setting this attribute to true the view is allowed to take focus. By setting it to "false" the view will not take focus. This value does not impact the behavior of directly calling View.requestFocus(), which will always request focus regardless of this view. It only impacts where focus navigation will try to move focus.

May be a boolean value, such as "true" or "false".

Must be one of the following constant values.

ConstantValueDescription
auto10

Related methods:

android:focusableInTouchMode

Boolean that controls whether a view can take focus while in touch mode. If this is true for a view, that view can gain focus when clicked on, and can keep focus if another view is clicked on that doesn't have this attribute set to true.

May be a boolean value, such as "true" or "false".

Related methods:

android:focusedByDefault

Whether this view is a default-focus view. Only one view per keyboard navigation cluster can have this attribute set to true. See View.setFocusedByDefault(boolean).

May be a boolean value, such as "true" or "false".

Related methods:

android:forceHasOverlappingRendering

Whether this view has elements that may overlap when drawn. See View.forceHasOverlappingRendering(boolean).

May be a boolean value, such as "true" or "false".

Related methods:

android:foreground

Defines the drawable to draw over the content. This can be used as an overlay. The foreground drawable participates in the padding of the content if the gravity is set to fill.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

May be a color value, in the form of "#rgb", "#argb", "#rrggbb", or "#aarrggbb".

Related methods:

android:foregroundGravity

Defines the gravity to apply to the foreground drawable. The gravity defaults to fill.

Must be one or more (separated by '|') of the following constant values.

ConstantValueDescription
bottom50Push object to the bottom of its container, not changing its size.
center11Place the object in the center of its container in both the vertical and horizontal axis, not changing its size.
center_horizontal1Place object in the horizontal center of its container, not changing its size.
center_vertical10Place object in the vertical center of its container, not changing its size.
clip_horizontal8Additional option that can be set to have the left and/or right edges of the child clipped to its container's bounds. The clip will be based on the horizontal gravity: a left gravity will clip the right edge, a right gravity will clip the left edge, and neither will clip both edges.
clip_vertical80Additional option that can be set to have the top and/or bottom edges of the child clipped to its container's bounds. The clip will be based on the vertical gravity: a top gravity will clip the bottom edge, a bottom gravity will clip the top edge, and neither will clip both edges.
fill77Grow the horizontal and vertical size of the object if needed so it completely fills its container.
fill_horizontal7Grow the horizontal size of the object if needed so it completely fills its container.
fill_vertical70Grow the vertical size of the object if needed so it completely fills its container.
left3Push object to the left of its container, not changing its size.
right5Push object to the right of its container, not changing its size.
top30Push object to the top of its container, not changing its size.

Related methods:

android:foregroundTint

Tint to apply to the foreground.

May be a color value, in the form of "#rgb", "#argb", "#rrggbb", or "#aarrggbb".

Related methods:

android:foregroundTintMode

Blending mode used to apply the foreground tint.

Must be one of the following constant values.

ConstantValueDescription
add10Combines the tint and drawable color and alpha channels, clamping the result to valid color values. Saturate(S + D)
multiplyeMultiplies the color and alpha channels of the drawable with those of the tint. [Sa * Da, Sc * Dc]
screenf[Sa + Da - Sa * Da, Sc + Dc - Sc * Dc]
src_atop9The tint is drawn above the drawable, but with the drawable\u2019s alpha channel masking the result. [Da, Sc * Da + (1 - Sa) * Dc]
src_in5The tint is masked by the alpha channel of the drawable. The drawable\u2019s color channels are thrown out. [Sa * Da, Sc * Da]
src_over3The tint is drawn on top of the drawable. [Sa + (1 - Sa)*Da, Rc = Sc + (1 - Sa)*Dc]

Related methods:

android:hapticFeedbackEnabled

Boolean that controls whether a view should have haptic feedback enabled for events such as long presses.

May be a boolean value, such as "true" or "false".

Related methods:

android:id

Supply an identifier name for this view, to later retrieve it with View.findViewById() or Activity.findViewById(). This must be a resource reference; typically you set this using the @+ syntax to create a new ID resources. For example: android:id="@+id/my_id" which allows you to later retrieve the view with findViewById(R.id.my_id).

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

Related methods:

android:importantForAccessibility

Describes whether or not this view is important for accessibility. If it is important, the view fires accessibility events and is reported to accessibility services that query the screen. Note: While not recommended, an accessibility service may decide to ignore this attribute and operate on all views in the view tree.

May be an integer value, such as "100".

Must be one of the following constant values.

ConstantValueDescription
auto0The system determines whether the view is important for accessibility - default (recommended).
no2The view is not important for accessibility.
noHideDescendants4The view is not important for accessibility, nor are any of its descendant views.
yes1The view is important for accessibility.

Related methods:

android:importantForAutofill

Hints the Android System whether the view node associated with this View should be included in a view structure used for autofill purposes.

Must be one or more (separated by '|') of the following constant values.

ConstantValueDescription
auto0Let the Android System use its heuristics to determine if the view is important for autofill.
no2Hint the Android System that this view is *not* important for autofill, but its children (if any) will be traversed..
noExcludeDescendants8Hint the Android System that this view is *not* important for autofill, and its children (if any) will not be traversed.
yes1Hint the Android System that this view is important for autofill, and its children (if any) will be traversed..
yesExcludeDescendants4Hint the Android System that this view is important for autofill, but its children (if any) will not be traversed.

Related methods:

android:importantForContentCapture

Hints the Android System whether the view node associated with this View should be use for content capture purposes.

Must be one or more (separated by '|') of the following constant values.

ConstantValueDescription
auto0Let the Android System use its heuristics to determine if the view is important for content capture.
no2Hint the Android System that this view is *not* important for content capture, but its children (if any) will be traversed..
noExcludeDescendants8Hint the Android System that this view is *not* important for content capture, and its children (if any) will not be traversed.
yes1Hint the Android System that this view is important for content capture, and its children (if any) will be traversed..
yesExcludeDescendants4Hint the Android System that this view is important for content capture, but its children (if any) will not be traversed.

Related methods:

android:isCredential

Boolean that hints the Android System that the view is credential and associated with CredentialManager

May be a boolean value, such as "true" or "false".

Related methods:

android:isScrollContainer

Set this if the view will serve as a scrolling container, meaning that it can be resized to shrink its overall window so that there will be space for an input method. If not set, the default value will be true if "scrollbars" has the vertical scrollbar set, else it will be false.

May be a boolean value, such as "true" or "false".

Related methods:

android:keepScreenOn

Controls whether the view's window should keep the screen on while visible.

May be a boolean value, such as "true" or "false".

Related methods:

android:keyboardNavigationCluster

Whether this view is a root of a keyboard navigation cluster. See View.setKeyboardNavigationCluster(boolean).

May be a boolean value, such as "true" or "false".

Related methods:

android:layerType

Specifies the type of layer backing this view. The default value is none. Refer to View.setLayerType(int, android.graphics.Paint) for more information.

Must be one of the following constant values.

ConstantValueDescription
hardware2Use a hardware layer. Refer to View.setLayerType(int, android.graphics.Paint) for more information.
none0Don't use a layer.
software1Use a software layer. Refer to View.setLayerType(int, android.graphics.Paint) for more information.

Related methods:

android:layoutDirection

Defines the direction of layout drawing. This typically is associated with writing direction of the language script used. The possible values are "ltr" for Left-to-Right, "rtl" for Right-to-Left, "locale", and "inherit" from parent view. If there is nothing to inherit, "locale" is used. "locale" falls back to "en-US". "ltr" is the direction used in "en-US". The default for this attribute is "inherit".

Must be one of the following constant values.

ConstantValueDescription
inherit2Inherit from parent.
locale3Locale.
ltr0Left-to-Right.
rtl1Right-to-Left.

Related methods:

android:longClickable

Defines whether this view reacts to long click events.

May be a boolean value, such as "true" or "false".

Related methods:

android:minHeight

Defines the minimum height of the view. It is not guaranteed the view will be able to achieve this minimum height (for example, if its parent layout constrains it with less available height).

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:minWidth

Defines the minimum width of the view. It is not guaranteed the view will be able to achieve this minimum width (for example, if its parent layout constrains it with less available width).

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:nextClusterForward

Defines the next keyboard navigation cluster. If the reference refers to a view that does not exist or is part of a hierarchy that is invisible, a RuntimeException will result when the reference is accessed.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

Related methods:

android:nextFocusDown

Defines the next view to give focus to when the next focus is View.FOCUS_DOWN If the reference refers to a view that does not exist or is part of a hierarchy that is invisible, a RuntimeException will result when the reference is accessed.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

Related methods:

android:nextFocusForward

Defines the next view to give focus to when the next focus is View.FOCUS_FORWARD If the reference refers to a view that does not exist or is part of a hierarchy that is invisible, a RuntimeException will result when the reference is accessed.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

Related methods:

android:nextFocusLeft

Defines the next view to give focus to when the next focus is View.FOCUS_LEFT. If the reference refers to a view that does not exist or is part of a hierarchy that is invisible, a RuntimeException will result when the reference is accessed.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

Related methods:

android:nextFocusRight

Defines the next view to give focus to when the next focus is View.FOCUS_RIGHT If the reference refers to a view that does not exist or is part of a hierarchy that is invisible, a RuntimeException will result when the reference is accessed.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

Related methods:

android:nextFocusUp

Defines the next view to give focus to when the next focus is View.FOCUS_UP If the reference refers to a view that does not exist or is part of a hierarchy that is invisible, a RuntimeException will result when the reference is accessed.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

Related methods:

android:onClick

Name of the method in this View's context to invoke when the view is clicked. This name must correspond to a public method that takes exactly one parameter of type View. For instance, if you specify android:onClick="sayHello", you must declare a public void sayHello(View v) method of your context (typically, your Activity).

May be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character;

android:outlineAmbientShadowColor

Sets the color of the ambient shadow that is drawn when the view has a positive Z or elevation value.

By default the shadow color is black. Generally, this color will be opaque so the intensity of the shadow is consistent between different views with different colors.

The opacity of the final ambient shadow is a function of the shadow caster height, the alpha channel of the outlineAmbientShadowColor (typically opaque), and the R.attr.ambientShadowAlpha theme attribute.

May be a color value, in the form of "#rgb", "#argb", "#rrggbb", or "#aarrggbb".

Related methods:

android:outlineSpotShadowColor

Sets the color of the spot shadow that is drawn when the view has a positive Z or elevation value.

By default the shadow color is black. Generally, this color will be opaque so the intensity of the shadow is consistent between different views with different colors.

The opacity of the final spot shadow is a function of the shadow caster height, the alpha channel of the outlineSpotShadowColor (typically opaque), and the R.attr.spotShadowAlpha theme attribute.

May be a color value, in the form of "#rgb", "#argb", "#rrggbb", or "#aarrggbb".

Related methods:

android:padding

Sets the padding, in pixels, of all four edges. Padding is defined as space between the edges of the view and the view's content. This value will take precedence over any of the edge-specific values (paddingLeft, paddingTop, paddingRight, paddingBottom, paddingHorizontal and paddingVertical), but will not override paddingStart or paddingEnd, if set. A view's size will include its padding. If a R.attr.background is provided, the padding will initially be set to that (0 if the drawable does not have padding). Explicitly setting a padding value will override the corresponding padding found in the background.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:paddingBottom

Sets the padding, in pixels, of the bottom edge; see R.attr.padding.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:paddingEnd

Sets the padding, in pixels, of the end edge; see R.attr.padding.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:paddingHorizontal

Sets the padding, in pixels, of the left and right edges; see R.attr.padding. This value will take precedence over paddingLeft and paddingRight, but not paddingStart or paddingEnd (if set).

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

android:paddingLeft

Sets the padding, in pixels, of the left edge; see R.attr.padding.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:paddingRight

Sets the padding, in pixels, of the right edge; see R.attr.padding.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:paddingStart

Sets the padding, in pixels, of the start edge; see R.attr.padding.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:paddingTop

Sets the padding, in pixels, of the top edge; see R.attr.padding.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:paddingVertical

Sets the padding, in pixels, of the top and bottom edges; see R.attr.padding. This value will take precedence over paddingTop and paddingBottom, if set.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

android:preferKeepClear

Sets a preference to keep the bounds of this view clear from floating windows above this view's window. This informs the system that the view is considered a vital area for the user and that ideally it should not be covered. Setting this is only appropriate for UI where the user would likely take action to uncover it.

The system will try to respect this, but when not possible will ignore it.

This is equivalent to View.setPreferKeepClear(boolean).

May be a boolean value, such as "true" or "false".

Related methods:

android:requiresFadingEdge

Defines which edges should be faded on scrolling.

Must be one or more (separated by '|') of the following constant values.

ConstantValueDescription
horizontal1000Fades horizontal edges only.
none0No edge is faded.
vertical2000Fades vertical edges only.

Related methods:

android:rotation

rotation of the view, in degrees.

May be a floating point value, such as "1.2".

Related methods:

android:rotationX

rotation of the view around the x axis, in degrees.

May be a floating point value, such as "1.2".

Related methods:

android:rotationY

rotation of the view around the y axis, in degrees.

May be a floating point value, such as "1.2".

Related methods:

android:saveEnabled

If false, no state will be saved for this view when it is being frozen. The default is true, allowing the view to be saved (however it also must have an ID assigned to it for its state to be saved). Setting this to false only disables the state for this view, not for its children which may still be saved.

May be a boolean value, such as "true" or "false".

Related methods:

android:scaleX

scale of the view in the x direction.

May be a floating point value, such as "1.2".

Related methods:

android:scaleY

scale of the view in the y direction.

May be a floating point value, such as "1.2".

Related methods:

android:screenReaderFocusable

Whether this view should be treated as a focusable unit by screen reader accessibility tools. See View.setScreenReaderFocusable(boolean). The default value, false, leaves the screen reader to consider other signals, such as focusability or the presence of text, to decide what it focus.

May be a boolean value, such as "true" or "false".

Related methods:

android:scrollIndicators

Defines which scroll indicators should be displayed when the view can be scrolled. Multiple values may be combined using logical OR, for example "top|bottom".

Must be one or more (separated by '|') of the following constant values.

ConstantValueDescription
bottom2Displays bottom scroll indicator when vew can be scrolled down.
end20Displays right scroll indicator when vew can be scrolled in the end direction.
left4Displays left scroll indicator when vew can be scrolled left.
none0No scroll indicators are displayed.
right8Displays right scroll indicator when vew can be scrolled right.
start10Displays right scroll indicator when vew can be scrolled in the start direction.
top1Displays top scroll indicator when view can be scrolled up.

Related methods:

android:scrollX

The initial horizontal scroll offset, in pixels.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

android:scrollY

The initial vertical scroll offset, in pixels.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

android:scrollbarAlwaysDrawHorizontalTrack

Defines whether the horizontal scrollbar track should always be drawn.

May be a boolean value, such as "true" or "false".

android:scrollbarAlwaysDrawVerticalTrack

Defines whether the vertical scrollbar track should always be drawn.

May be a boolean value, such as "true" or "false".

android:scrollbarDefaultDelayBeforeFade

Defines the delay in milliseconds that a scrollbar waits before fade out.

May be an integer value, such as "100".

Related methods:

android:scrollbarFadeDuration

Defines the delay in milliseconds that a scrollbar takes to fade out.

May be an integer value, such as "100".

Related methods:

android:scrollbarSize

Sets the width of vertical scrollbars and height of horizontal scrollbars.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:scrollbarStyle

Controls the scrollbar style and position. The scrollbars can be overlaid or inset. When inset, they add to the padding of the view. And the scrollbars can be drawn inside the padding area or on the edge of the view. For example, if a view has a background drawable and you want to draw the scrollbars inside the padding specified by the drawable, you can use insideOverlay or insideInset. If you want them to appear at the edge of the view, ignoring the padding, then you can use outsideOverlay or outsideInset.

Must be one of the following constant values.

ConstantValueDescription
insideInset1000000Inside the padding and inset.
insideOverlay0Inside the padding and overlaid.
outsideInset3000000Edge of the view and inset.
outsideOverlay2000000Edge of the view and overlaid.

Related methods:

android:scrollbarThumbHorizontal

Defines the horizontal scrollbar thumb drawable.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

Related methods:

android:scrollbarThumbVertical

Defines the vertical scrollbar thumb drawable.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

Related methods:

android:scrollbarTrackHorizontal

Defines the horizontal scrollbar track drawable.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

Related methods:

android:scrollbarTrackVertical

Defines the vertical scrollbar track drawable.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

Related methods:

android:scrollbars

Defines which scrollbars should be displayed on scrolling or not.

Must be one or more (separated by '|') of the following constant values.

ConstantValueDescription
horizontal100Displays horizontal scrollbar only.
none0No scrollbar is displayed.
vertical200Displays vertical scrollbar only.

android:soundEffectsEnabled

Boolean that controls whether a view should have sound effects enabled for events such as clicking and touching.

May be a boolean value, such as "true" or "false".

Related methods:

android:stateListAnimator

Sets the state-based animator for the View.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

android:supplementalDescription

Provides brief supplemental information for the view, such as the purpose of the view when that purpose is not conveyed within its textual representation. This property is used primarily for accessibility.

May be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character;

Related methods:

android:tag

Supply a tag for this view containing a String, to be retrieved later with View.getTag() or searched for with View.findViewWithTag(). It is generally preferable to use IDs (through the android:id attribute) instead of tags because they are faster and allow for compile-time type checking.

May be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character;

android:textAlignment

Defines the alignment of the text.

May be an integer value, such as "100".

Must be one of the following constant values.

ConstantValueDescription
center4Center the paragraph, for example: ALIGN_CENTER.
gravity1Default for the root view. The gravity determines the alignment, ALIGN_NORMAL, ALIGN_CENTER, or ALIGN_OPPOSITE, which are relative to each paragraph\u2019s text direction.
inherit0Default.
textEnd3Align to the end of the paragraph, for example: ALIGN_OPPOSITE.
textStart2Align to the start of the paragraph, for example: ALIGN_NORMAL.
viewEnd6Align to the end of the view, which is ALIGN_RIGHT if the view\u2019s resolved layoutDirection is LTR, and ALIGN_LEFT otherwise.
viewStart5Align to the start of the view, which is ALIGN_LEFT if the view\u2019s resolved layoutDirection is LTR, and ALIGN_RIGHT otherwise.

Related methods:

android:textDirection

Defines the direction of the text.

May be an integer value, such as "100".

Must be one of the following constant values.

ConstantValueDescription
anyRtl2The paragraph direction is RTL if it contains any strong RTL character, otherwise it is LTR if it contains any strong LTR characters. If there are neither, the paragraph direction is the view\u2019s resolved layout direction.
firstStrong1Default for the root view. The first strong directional character determines the paragraph direction. If there is no strong directional character, the paragraph direction is the view\u2019s resolved layout direction.
firstStrongLtr6The first strong directional character determines the paragraph direction. If there is no strong directional character, the paragraph direction is LTR.
firstStrongRtl7The first strong directional character determines the paragraph direction. If there is no strong directional character, the paragraph direction is RTL.
inherit0Default.
locale5The paragraph direction is coming from the system Locale.
ltr3The paragraph direction is left to right.
rtl4The paragraph direction is right to left.

Related methods:

android:theme

Specifies a theme override for a view. When a theme override is set, the view will be inflated using a Context themed with the specified resource. During XML inflation, any child views under the view with a theme override will inherit the themed context.

May be a reference to another resource, in the form "@[+][package:]type/name" or a theme attribute in the form "?[package:]type/name".

android:tooltipText

Defines text displayed in a small popup window on hover or long press.

May be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character;

Related methods:

android:transformPivotX

x location of the pivot point around which the view will rotate and scale. This xml attribute sets the pivotX property of the View.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:transformPivotY

y location of the pivot point around which the view will rotate and scale. This xml attribute sets the pivotY property of the View.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:transitionName

Names a View such that it can be identified for Transitions. Names should be unique in the View hierarchy.

May be a string value, using '\\;' to escape characters such as '\\n' or '\\uxxxx' for a unicode character;

android:translationX

translation in x of the view. This value is added post-layout to the left property of the view, which is set by its layout.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:translationY

translation in y of the view. This value is added post-layout to the top property of the view, which is set by its layout.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:translationZ

translation in z of the view. This value is added to its elevation.

May be a dimension value, which is a floating point number appended with a unit such as "14.5sp". Available units are: px (pixels), dp (density-independent pixels), sp (scaled pixels based on preferred font size), in (inches), and mm (millimeters).

Related methods:

android:visibility

Controls the initial visibility of the view.

Must be one of the following constant values.

ConstantValueDescription
gone2Completely hidden, as if the view had not been added.
invisible1Not displayed, but taken into account during layout (space is left for it).
visible0Visible on screen; the default value.

Related methods:

Constants

ACCESSIBILITY_DATA_SENSITIVE_AUTO

Added in API level 34
public static final int ACCESSIBILITY_DATA_SENSITIVE_AUTO

Automatically determine whether the view should only allow interactions from AccessibilityServices with the AccessibilityServiceInfo.isAccessibilityTool() property set to true.

Accessibility interactions from services without isAccessibilityTool set to true are disallowed for any of the following conditions:

  • this view sets getFilterTouchesWhenObscured().
  • any parent of this view returns true from isAccessibilityDataSensitive().
  • Constant Value: 0 (0x00000000)

    ACCESSIBILITY_DATA_SENSITIVE_NO

    Added in API level 34
    public static final int ACCESSIBILITY_DATA_SENSITIVE_NO

    Allow interactions from all AccessibilityServices, regardless of their AccessibilityServiceInfo.isAccessibilityTool() property.

    Constant Value: 2 (0x00000002)

    ACCESSIBILITY_DATA_SENSITIVE_YES

    Added in API level 34
    public static final int ACCESSIBILITY_DATA_SENSITIVE_YES

    Only allow interactions from AccessibilityServices with the AccessibilityServiceInfo.isAccessibilityTool() property set to true.

    Constant Value: 1 (0x00000001)

    ACCESSIBILITY_LIVE_REGION_ASSERTIVE

    Added in API level 19
    public static final int ACCESSIBILITY_LIVE_REGION_ASSERTIVE

    Live region mode specifying that accessibility services should immediately notify users of changes to this view. For example, a screen reader may interrupt ongoing speech to immediately announce these changes.

    Use with setAccessibilityLiveRegion(int).

    Constant Value: 2 (0x00000002)

    ACCESSIBILITY_LIVE_REGION_NONE

    Added in API level 19
    public static final int ACCESSIBILITY_LIVE_REGION_NONE

    Live region mode specifying that accessibility services should not automatically announce changes to this view. This is the default live region mode for most views.

    Use with setAccessibilityLiveRegion(int).

    Constant Value: 0 (0x00000000)

    ACCESSIBILITY_LIVE_REGION_POLITE

    Added in API level 19
    public static final int ACCESSIBILITY_LIVE_REGION_POLITE

    Live region mode specifying that accessibility services should notify users of changes to this view.

    Use with setAccessibilityLiveRegion(int).

    Constant Value: 1 (0x00000001)

    AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS

    Added in API level 26
    public static final int AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS

    Flag requesting you to add views that are marked as not important for autofill (see setImportantForAutofill(int)) to a ViewStructure.

    Constant Value: 1 (0x00000001)

    AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE

    Added in API level 26
    public static final String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE

    Hint indicating that this view can be autofilled with a credit card expiration date.

    It should be used when the credit card expiration date is represented by just one view; if it is represented by more than one (for example, one view for the month and another view for the year), then each of these views should use the hint specific for the unit (AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH, or AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR).

    Can be used with either setAutofillHints(java.lang.String[]) or android:autofillHint (in which case the value should be .AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE).

    When annotating a view with this hint, it's recommended to use a date autofill value to avoid ambiguity when the autofill service provides a value for it. To understand why a value can be ambiguous, consider "April of 2020", which could be represented as either of the following options:

    • "04/2020"
    • "4/2020"
    • "2020/04"
    • "2020/4"
    • "April/2020"
    • "Apr/2020"

    You define a date autofill value for the view by overriding the following methods:

    1. getAutofillType() to return AUTOFILL_TYPE_DATE.
    2. getAutofillValue() to return a date autofillvalue.
    3. autofill(android.view.autofill.AutofillValue) to expect a data autofillvalue.

    See setAutofillHints(java.lang.String) for more info about autofill hints.

    Constant Value: "creditCardExpirationDate"

    AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY

    Added in API level 26
    public static final String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY

    Hint indicating that this view can be autofilled with a credit card expiration day.

    Can be used with either setAutofillHints(java.lang.String[]) or android:autofillHint (in which case the value should be .AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY).

    See setAutofillHints(java.lang.String) for more info about autofill hints.

    Constant Value: "creditCardExpirationDay"

    AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH

    Added in API level 26
    public static final String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH

    Hint indicating that this view can be autofilled with a credit card expiration month.

    Can be used with either setAutofillHints(java.lang.String[]) or android:autofillHint (in which case the value should be .AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH).

    When annotating a view with this hint, it's recommended to use a text autofill value whose value is the numerical representation of the month, starting on 1 to avoid ambiguity when the autofill service provides a value for it. To understand why a value can be ambiguous, consider "January", which could be represented as either of

    • "1": recommended way.
    • "0": if following the Calendar.MONTH convention.
    • "January": full name, in English.
    • "jan": abbreviated name, in English.
    • "Janeiro": full name, in another language.

    Another recommended approach is to use a date autofill value - see AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE for more details.

    See setAutofillHints(java.lang.String) for more info about autofill hints.

    Constant Value: "creditCardExpirationMonth"

    AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR

    Added in API level 26
    public static final String AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR

    Hint indicating that this view can be autofilled with a credit card expiration year.

    Can be used with either setAutofillHints(java.lang.String[]) or android:autofillHint (in which case the value should be .AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR).

    See setAutofillHints(java.lang.String) for more info about autofill hints.

    Constant Value: "creditCardExpirationYear"

    AUTOFILL_HINT_CREDIT_CARD_NUMBER

    Added in API level 26
    public static final String AUTOFILL_HINT_CREDIT_CARD_NUMBER

    Hint indicating that this view can be autofilled with a credit card number.

    Can be used with either setAutofillHints(java.lang.String[]) or android:autofillHint (in which case the value should be .AUTOFILL_HINT_CREDIT_CARD_NUMBER).

    See setAutofillHints(java.lang.String) for more info about autofill hints.

    Constant Value: "creditCardNumber"

    AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE

    Added in API level 26
    public static final String AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE

    Hint indicating that this view can be autofilled with a credit card security code.

    Can be used with either setAutofillHints(java.lang.String[]) or android:autofillHint (in which case the value should be .AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE).

    See setAutofillHints(java.lang.String) for more info about autofill hints.

    Constant Value: "creditCardSecurityCode"

    AUTOFILL_HINT_EMAIL_ADDRESS

    Added in API level 26
    public static final String AUTOFILL_HINT_EMAIL_ADDRESS

    Hint indicating that this view can be autofilled with an email address.

    Can be used with either setAutofillHints(java.lang.String[]) or android:autofillHint (in which case the value should be .AUTOFILL_HINT_EMAIL_ADDRESS).

    See setAutofillHints(java.lang.String) for more info about autofill hints.

    Constant Value: "emailAddress"

    AUTOFILL_HINT_NAME

    Added in API level 26
    public static final String AUTOFILL_HINT_NAME

    Hint indicating that this view can be autofilled with a user's real name.

    Can be used with either setAutofillHints(java.lang.String[]) or android:autofillHint (in which case the value should be .AUTOFILL_HINT_NAME).

    See setAutofillHints(java.lang.String) for more info about autofill hints.

    Constant Value: "name"

    AUTOFILL_HINT_PASSWORD

    Added in API level 26
    public static final String AUTOFILL_HINT_PASSWORD

    Hint indicating that this view can be autofilled with a password.

    Can be used with either setAutofillHints(java.lang.String[]) or android:autofillHint (in which case the value should be .AUTOFILL_HINT_PASSWORD).

    See setAutofillHints(java.lang.String) for more info about autofill hints.

    Constant Value: "password"

    AUTOFILL_HINT_PHONE

    Added in API level 26
    public static final String AUTOFILL_HINT_PHONE

    Hint indicating that this view can be autofilled with a phone number.

    Can be used with either setAutofillHints(java.lang.String[]) or android:autofillHint (in which case the value should be .AUTOFILL_HINT_PHONE).

    See setAutofillHints(java.lang.String) for more info about autofill hints.

    Constant Value: "phone"

    AUTOFILL_HINT_POSTAL_ADDRESS

    Added in API level 26
    public static final String AUTOFILL_HINT_POSTAL_ADDRESS

    Hint indicating that this view can be autofilled with a postal address.

    Can be used with either setAutofillHints(java.lang.String[]) or android:autofillHint (in which case the value should be .AUTOFILL_HINT_POSTAL_ADDRESS).

    See setAutofillHints(java.lang.String) for more info about autofill hints.

    Constant Value: "postalAddress"

    AUTOFILL_HINT_POSTAL_CODE

    Added in API level 26
    public static final String AUTOFILL_HINT_POSTAL_CODE

    Hint indicating that this view can be autofilled with a postal code.

    Can be used with either setAutofillHints(java.lang.String[]) or android:autofillHint (in which case the value should be .AUTOFILL_HINT_POSTAL_CODE).

    See setAutofillHints(java.lang.String) for more info about autofill hints.

    Constant Value: "postalCode"

    AUTOFILL_HINT_USERNAME

    Added in API level 26
    public static final String AUTOFILL_HINT_USERNAME

    Hint indicating that this view can be autofilled with a username.

    Can be used with either setAutofillHints(java.lang.String[]) or android:autofillHint (in which case the value should be .AUTOFILL_HINT_USERNAME).

    See setAutofillHints(java.lang.String) for more info about autofill hints.

    Constant Value: "username"

    AUTOFILL_TYPE_DATE

    Added in API level 26
    public static final int AUTOFILL_TYPE_DATE

    Autofill type for a field that contains a date, which is represented by a long representing the number of milliseconds since the standard base time known as "the epoch", namely January 1, 1970, 00:00:00 GMT (see Date.getTime().

    AutofillValue instances for autofilling a View can be obtained through AutofillValue.forDate(long), and the values passed to autofill a View can be fetched through AutofillValue.getDateValue().

    See also:

    Constant Value: 4 (0x00000004)

    AUTOFILL_TYPE_LIST

    Added in API level 26
    public static final int AUTOFILL_TYPE_LIST

    Autofill type for a selection list field, which is filled by an int representing the element index inside the list (starting at 0).

    AutofillValue instances for autofilling a View can be obtained through AutofillValue.forList(int), and the value passed to autofill a View can be fetched through AutofillValue.getListValue().

    The available options in the selection list are typically provided by AssistStructure.ViewNode.getAutofillOptions().

    See also:

    Constant Value: 3 (0x00000003)

    AUTOFILL_TYPE_NONE

    Added in API level 26
    public static final int AUTOFILL_TYPE_NONE

    Autofill type for views that cannot be autofilled.

    Typically used when the view is read-only; for example, a text label.

    See also:

    Constant Value: 0 (0x00000000)

    AUTOFILL_TYPE_TEXT

    Added in API level 26
    public static final int AUTOFILL_TYPE_TEXT

    Autofill type for a text field, which is filled by a CharSequence.

    AutofillValue instances for autofilling a View can be obtained through AutofillValue.forText(CharSequence), and the value passed to autofill a View can be fetched through AutofillValue.getTextValue().

    See also:

    Constant Value: 1 (0x00000001)

    AUTOFILL_TYPE_TOGGLE

    Added in API level 26
    public static final int AUTOFILL_TYPE_TOGGLE

    Autofill type for a togglable field, which is filled by a boolean.

    AutofillValue instances for autofilling a View can be obtained through AutofillValue.forToggle(boolean), and the value passed to autofill a View can be fetched through AutofillValue.getToggleValue().

    See also:

    Constant Value: 2 (0x00000002)

    CONTENT_SENSITIVITY_AUTO

    Added in API level 35
    public static final int CONTENT_SENSITIVITY_AUTO

    Content sensitivity is determined by the framework. The framework uses a heuristic to determine if this view displays sensitive content. Autofill hints i.e. getAutofillHints() are used in the heuristic to determine if this view should be considered as a sensitive view.

    AUTOFILL_HINT_USERNAME, AUTOFILL_HINT_PASSWORD, AUTOFILL_HINT_CREDIT_CARD_NUMBER, AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR are considered sensitive hints by the framework, and the list may include more hints in the future.

    The window hosting a sensitive view will be marked as secure during an active media projection session. This would be equivalent to applying WindowManager.LayoutParams.FLAG_SECURE to the window.

    Constant Value: 0 (0x00000000)

    CONTENT_SENSITIVITY_NOT_SENSITIVE

    Added in API level 35
    public static final int CONTENT_SENSITIVITY_NOT_SENSITIVE

    The view doesn't display sensitive content.

    Constant Value: 2 (0x00000002)

    CONTENT_SENSITIVITY_SENSITIVE

    Added in API level 35
    public static final int CONTENT_SENSITIVITY_SENSITIVE

    The view displays sensitive content.

    The window hosting a sensitive view will be marked as secure during an active media projection session. This would be equivalent to applying WindowManager.LayoutParams.FLAG_SECURE to the window.

    Constant Value: 1 (0x00000001)

    DRAG_FLAG_ACCESSIBILITY_ACTION

    Added in API level 32
    public static final int DRAG_FLAG_ACCESSIBILITY_ACTION

    Flag indicating that the drag was initiated with AccessibilityNodeInfo.AccessibilityAction.ACTION_DRAG_START. When startDragAndDrop(android.content.ClipData, android.view.View.DragShadowBuilder, java.lang.Object, int) is called, this is used by the system to perform a drag without animations.

    Constant Value: 1024 (0x00000400)

    DRAG_FLAG_GLOBAL

    Added in API level 24
    public static final int DRAG_FLAG_GLOBAL

    Flag indicating that a drag can cross window boundaries. When startDragAndDrop(android.content.ClipData, android.view.View.DragShadowBuilder, java.lang.Object, int) is called with this flag set, all visible applications with targetSdkVersion >= API 24 will be able to participate in the drag operation and receive the dragged content.

    If this is the only flag set, then the drag recipient will only have access to text data and intents contained in the ClipData object. Access to URIs contained in the ClipData is determined by other DRAG_FLAG_GLOBAL_* flags

    Constant Value: 256 (0x00000100)

    DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION

    Added in API level 24
    public static final int DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION

    When this flag is used with DRAG_FLAG_GLOBAL_URI_READ and/or DRAG_FLAG_GLOBAL_URI_WRITE, the URI permission grant can be persisted across device reboots until explicitly revoked with Context.revokeUriPermission(Uri, int) Context.revokeUriPermission}.

    Constant Value: 64 (0x00000040)

    DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION

    Added in API level 24
    public static final int DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION

    When this flag is used with DRAG_FLAG_GLOBAL_URI_READ and/or DRAG_FLAG_GLOBAL_URI_WRITE, the URI permission grant applies to any URI that is a prefix match against the original granted URI.

    Constant Value: 128 (0x00000080)

    DRAG_FLAG_GLOBAL_SAME_APPLICATION

    Added in API level 35
    public static final int DRAG_FLAG_GLOBAL_SAME_APPLICATION

    Flag indicating that a drag can cross window boundaries (within the same application). When startDragAndDrop(android.content.ClipData, android.view.View.DragShadowBuilder, java.lang.Object, int) is called with this flag set, only visible windows belonging to the same application (ie. share the same UID) with targetSdkVersion >= API 24 will be able to participate in the drag operation and receive the dragged content. If both DRAG_FLAG_GLOBAL_SAME_APPLICATION and DRAG_FLAG_GLOBAL are set, then DRAG_FLAG_GLOBAL_SAME_APPLICATION takes precedence and the drag will only go to visible windows from the same application.

    Constant Value: 4096 (0x00001000)

    DRAG_FLAG_GLOBAL_URI_READ

    Added in API level 24
    public static final int DRAG_FLAG_GLOBAL_URI_READ

    When this flag is used with DRAG_FLAG_GLOBAL, the drag recipient will be able to request read access to the content URI(s) contained in the ClipData object.

    Constant Value: 1 (0x00000001)

    DRAG_FLAG_GLOBAL_URI_WRITE

    Added in API level 24
    public static final int DRAG_FLAG_GLOBAL_URI_WRITE

    When this flag is used with DRAG_FLAG_GLOBAL, the drag recipient will be able to request write access to the content URI(s) contained in the ClipData object.

    Constant Value: 2 (0x00000002)

    DRAG_FLAG_HIDE_CALLING_TASK_ON_DRAG_START

    Added in API level 36
    public static final int DRAG_FLAG_HIDE_CALLING_TASK_ON_DRAG_START

    Flag indicating that this drag will result in the caller activity's task to be hidden for the duration of the drag, which means that the source activity will not receive drag events for the current drag gesture. Only the current VoiceInteractionService may use this flag.

    Constant Value: 16384 (0x00004000)

    DRAG_FLAG_OPAQUE

    Added in API level 24
    public static final int DRAG_FLAG_OPAQUE

    Flag indicating that the drag shadow will be opaque. When startDragAndDrop(android.content.ClipData, android.view.View.DragShadowBuilder, java.lang.Object, int) is called with this flag set, the drag shadow will be opaque, otherwise, it will be semitransparent.

    Constant Value: 512 (0x00000200)

    DRAG_FLAG_START_INTENT_SENDER_ON_UNHANDLED_DRAG

    Added in API level 35
    public static final int DRAG_FLAG_START_INTENT_SENDER_ON_UNHANDLED_DRAG

    Flag indicating that an unhandled drag should be delegated to the system to be started if no visible window wishes to handle the drop. When using this flag, the caller must provide ClipData with an Item that contains an immutable IntentSender to an activity to be launched (not a broadcast, service, etc). See ClipData.Item.Builder.setIntentSender(IntentSender). The system can decide to launch the intent or not based on factors like the current screen size or windowing mode. If the system does not launch the intent, it will be canceled via the normal drag and drop flow.

    Constant Value: 8192 (0x00002000)

    DRAWING_CACHE_QUALITY_AUTO

    Added in API level 1
    Deprecated in API level 28
    public static final int DRAWING_CACHE_QUALITY_AUTO

    This constant was deprecated in API level 28.
    The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

    Enables automatic quality mode for the drawing cache.

    Constant Value: 0 (0x00000000)

    DRAWING_CACHE_QUALITY_HIGH

    Added in API level 1
    Deprecated in API level 28
    public static final int DRAWING_CACHE_QUALITY_HIGH

    This constant was deprecated in API level 28.
    The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

    Enables high quality mode for the drawing cache.

    Constant Value: 1048576 (0x00100000)

    DRAWING_CACHE_QUALITY_LOW

    Added in API level 1
    Deprecated in API level 28
    public static final int DRAWING_CACHE_QUALITY_LOW

    This constant was deprecated in API level 28.
    The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

    Enables low quality mode for the drawing cache.

    Constant Value: 524288 (0x00080000)

    FIND_VIEWS_WITH_CONTENT_DESCRIPTION

    Added in API level 14
    public static final int FIND_VIEWS_WITH_CONTENT_DESCRIPTION

    Find find views that contain the specified content description.

    Constant Value: 2 (0x00000002)

    FIND_VIEWS_WITH_TEXT

    Added in API level 14
    public static final int FIND_VIEWS_WITH_TEXT

    Find views that render the specified text.

    Constant Value: 1 (0x00000001)

    FOCUSABLE

    Added in API level 26
    public static final int FOCUSABLE

    This view wants keystrokes.

    Use with setFocusable(int) and android:focusable.

    Constant Value: 1 (0x00000001)

    FOCUSABLES_ALL

    public static final int FOCUSABLES_ALL

    View flag indicating whether addFocusables(java.util.ArrayList, int, int) should add all focusable Views regardless if they are focusable in touch mode.

    Constant Value: 0 (0x00000000)

    FOCUSABLES_TOUCH_MODE

    Added in API level 4
    public static final int FOCUSABLES_TOUCH_MODE

    View flag indicating whether addFocusables(java.util.ArrayList, int, int) should add only Views focusable in touch mode.

    Constant Value: 1 (0x00000001)

    FOCUSABLE_AUTO

    Added in API level 26
    public static final int FOCUSABLE_AUTO

    This view determines focusability automatically. This is the default.

    Use with setFocusable(int) and android:focusable.

    Constant Value: 16 (0x00000010)

    FOCUS_BACKWARD

    public static final int FOCUS_BACKWARD

    Use with focusSearch(int). Move focus to the previous selectable item.

    Constant Value: 1 (0x00000001)

    FOCUS_DOWN

    Added in API level 1
    public static final int FOCUS_DOWN

    Use with focusSearch(int). Move focus down.

    Constant Value: 130 (0x00000082)

    FOCUS_FORWARD

    Added in API level 1
    public static final int FOCUS_FORWARD

    Use with focusSearch(int). Move focus to the next selectable item.

    Constant Value: 2 (0x00000002)

    FOCUS_LEFT

    Added in API level 1
    public static final int FOCUS_LEFT

    Use with focusSearch(int). Move focus to the left.

    Constant Value: 17 (0x00000011)

    FOCUS_RIGHT

    Added in API level 1
    public static final int FOCUS_RIGHT

    Use with focusSearch(int). Move focus to the right.

    Constant Value: 66 (0x00000042)

    FOCUS_UP

    Added in API level 1
    public static final int FOCUS_UP

    Use with focusSearch(int). Move focus up.

    Constant Value: 33 (0x00000021)

    GONE

    Added in API level 1
    public static final int GONE

    This view is invisible, and it doesn't take any space for layout purposes. Use with setVisibility(int) and android:visibility.

    Constant Value: 8 (0x00000008)

    HAPTIC_FEEDBACK_ENABLED

    public static final int HAPTIC_FEEDBACK_ENABLED

    View flag indicating whether this view should have haptic feedback enabled for events such as long presses.

    Constant Value: 268435456 (0x10000000)

    IMPORTANT_FOR_ACCESSIBILITY_AUTO

    Added in API level 16
    public static final int IMPORTANT_FOR_ACCESSIBILITY_AUTO

    Automatically determine whether a view is important for accessibility.

    Constant Value: 0 (0x00000000)

    IMPORTANT_FOR_ACCESSIBILITY_NO

    Added in API level 16
    public static final int IMPORTANT_FOR_ACCESSIBILITY_NO

    The view is not important for accessibility.

    Constant Value: 2 (0x00000002)

    IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS

    Added in API level 19
    public static final int IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS

    The view is not important for accessibility, nor are any of its descendant views.

    Constant Value: 4 (0x00000004)

    IMPORTANT_FOR_ACCESSIBILITY_YES

    Added in API level 16
    public static final int IMPORTANT_FOR_ACCESSIBILITY_YES

    The view is important for accessibility.

    Constant Value: 1 (0x00000001)

    IMPORTANT_FOR_AUTOFILL_AUTO

    Added in API level 26
    public static final int IMPORTANT_FOR_AUTOFILL_AUTO

    Automatically determine whether a view is important for autofill.

    Constant Value: 0 (0x00000000)

    IMPORTANT_FOR_AUTOFILL_NO

    Added in API level 26
    public static final int IMPORTANT_FOR_AUTOFILL_NO

    The view is not important for autofill, but its children (if any) will be traversed.

    Constant Value: 2 (0x00000002)

    IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS

    Added in API level 26
    public static final int IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS

    The view is not important for autofill, and its children (if any) will not be traversed.

    Constant Value: 8 (0x00000008)

    IMPORTANT_FOR_AUTOFILL_YES

    Added in API level 26
    public static final int IMPORTANT_FOR_AUTOFILL_YES

    The view is important for autofill, and its children (if any) will be traversed.

    Constant Value: 1 (0x00000001)

    IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS

    Added in API level 26
    public static final int IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS

    The view is important for autofill, but its children (if any) will not be traversed.

    Constant Value: 4 (0x00000004)

    IMPORTANT_FOR_CONTENT_CAPTURE_AUTO

    Added in API level 30
    public static final int IMPORTANT_FOR_CONTENT_CAPTURE_AUTO

    Automatically determine whether a view is important for content capture.

    Constant Value: 0 (0x00000000)

    IMPORTANT_FOR_CONTENT_CAPTURE_NO

    Added in API level 30
    public static final int IMPORTANT_FOR_CONTENT_CAPTURE_NO

    The view is not important for content capture, but its children (if any) will be traversed.

    Constant Value: 2 (0x00000002)

    IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS

    Added in API level 30
    public static final int IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS

    The view is not important for content capture, and its children (if any) will not be traversed.

    Constant Value: 8 (0x00000008)

    IMPORTANT_FOR_CONTENT_CAPTURE_YES

    Added in API level 30
    public static final int IMPORTANT_FOR_CONTENT_CAPTURE_YES

    The view is important for content capture, and its children (if any) will be traversed.

    Constant Value: 1 (0x00000001)

    IMPORTANT_FOR_CONTENT_CAPTURE_YES_EXCLUDE_DESCENDANTS

    Added in API level 30
    public static final int IMPORTANT_FOR_CONTENT_CAPTURE_YES_EXCLUDE_DESCENDANTS

    The view is important for content capture, but its children (if any) will not be traversed.

    Constant Value: 4 (0x00000004)

    INVISIBLE

    Added in API level 1
    public static final int INVISIBLE

    This view is invisible, but it still takes up space for layout purposes. Use with setVisibility(int) and android:visibility.

    Constant Value: 4 (0x00000004)

    KEEP_SCREEN_ON

    public static final int KEEP_SCREEN_ON

    View flag indicating that the screen should remain on while the window containing this view is visible to the user. This effectively takes care of automatically setting the WindowManager's WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON.

    Constant Value: 67108864 (0x04000000)

    LAYER_TYPE_HARDWARE

    Added in API level 11
    public static final int LAYER_TYPE_HARDWARE

    Indicates that the view has a hardware layer. A hardware layer is backed by a hardware specific texture (generally Frame Buffer Objects or FBO on OpenGL hardware) and causes the view to be rendered using Android's hardware rendering pipeline, but only if hardware acceleration is turned on for the view hierarchy. When hardware acceleration is turned off, hardware layers behave exactly as software layers.

    A hardware layer is useful to apply a specific color filter and/or blending mode and/or translucency to a view and all its children.

    A hardware layer can be used to cache a complex view tree into a texture and reduce the complexity of drawing operations. For instance, when animating a complex view tree with a translation, a hardware layer can be used to render the view tree only once.

    A hardware layer can also be used to increase the rendering quality when rotation transformations are applied on a view. It can also be used to prevent potential clipping issues when applying 3D transforms on a view.

    Constant Value: 2 (0x00000002)

    LAYER_TYPE_NONE

    Added in API level 11
    public static final int LAYER_TYPE_NONE

    Indicates that the view does not have a layer.

    Constant Value: 0 (0x00000000)

    LAYER_TYPE_SOFTWARE

    Added in API level 11
    public static final int LAYER_TYPE_SOFTWARE

    Indicates that the view has a software layer. A software layer is backed by a bitmap and causes the view to be rendered using Android's software rendering pipeline, even if hardware acceleration is enabled.

    Software layers have various usages:

    When the application is not using hardware acceleration, a software layer is useful to apply a specific color filter and/or blending mode and/or translucency to a view and all its children.

    When the application is using hardware acceleration, a software layer is useful to render drawing primitives not supported by the hardware accelerated pipeline. It can also be used to cache a complex view tree into a texture and reduce the complexity of drawing operations. For instance, when animating a complex view tree with a translation, a software layer can be used to render the view tree only once.

    Software layers should be avoided when the affected view tree updates often. Every update will require to re-render the software layer, which can potentially be slow (particularly when hardware acceleration is turned on since the layer will have to be uploaded into a hardware texture after every update.)

    Constant Value: 1 (0x00000001)

    LAYOUT_DIRECTION_INHERIT

    Added in API level 17
    public static final int LAYOUT_DIRECTION_INHERIT

    Horizontal layout direction of this view is inherited from its parent. Use with setLayoutDirection(int).

    Constant Value: 2 (0x00000002)

    LAYOUT_DIRECTION_LOCALE

    Added in API level 17
    public static final int LAYOUT_DIRECTION_LOCALE

    Horizontal layout direction of this view is from deduced from the default language script for the locale. Use with setLayoutDirection(int).

    Constant Value: 3 (0x00000003)

    LAYOUT_DIRECTION_LTR

    Added in API level 17
    public static final int LAYOUT_DIRECTION_LTR

    Horizontal layout direction of this view is from Left to Right. Use with setLayoutDirection(int).

    Constant Value: 0 (0x00000000)

    LAYOUT_DIRECTION_RTL

    Added in API level 17
    public static final int LAYOUT_DIRECTION_RTL

    Horizontal layout direction of this view is from Right to Left. Use with setLayoutDirection(int).

    Constant Value: 1 (0x00000001)

    MEASURED_HEIGHT_STATE_SHIFT

    Added in API level 11
    public static final int MEASURED_HEIGHT_STATE_SHIFT

    Bit shift of MEASURED_STATE_MASK to get to the height bits for functions that combine both width and height into a single int, such as getMeasuredState() and the childState argument of resolveSizeAndState(int, int, int).

    Constant Value: 16 (0x00000010)

    MEASURED_SIZE_MASK

    Added in API level 11
    public static final int MEASURED_SIZE_MASK

    Bits of getMeasuredWidthAndState() and getMeasuredWidthAndState() that provide the actual measured size.

    Constant Value: 16777215 (0x00ffffff)

    MEASURED_STATE_MASK

    Added in API level 11
    public static final int MEASURED_STATE_MASK

    Bits of getMeasuredWidthAndState() and getMeasuredWidthAndState() that provide the additional state bits.

    Constant Value: -16777216 (0xff000000)

    MEASURED_STATE_TOO_SMALL

    Added in API level 11
    public static final int MEASURED_STATE_TOO_SMALL

    Bit of getMeasuredWidthAndState() and getMeasuredWidthAndState() that indicates the measured size is smaller that the space the view would like to have.

    Constant Value: 16777216 (0x01000000)

    NOT_FOCUSABLE

    Added in API level 26
    public static final int NOT_FOCUSABLE

    This view does not want keystrokes.

    Use with setFocusable(int) and android:focusable.

    Constant Value: 0 (0x00000000)

    NO_ID

    public static final int NO_ID

    Used to mark a View that has no ID.

    Constant Value: -1 (0xffffffff)

    OVER_SCROLL_ALWAYS

    Added in API level 9
    public static final int OVER_SCROLL_ALWAYS

    Always allow a user to over-scroll this view, provided it is a view that can scroll.

    Constant Value: 0 (0x00000000)

    OVER_SCROLL_IF_CONTENT_SCROLLS

    Added in API level 9
    public static final int OVER_SCROLL_IF_CONTENT_SCROLLS

    Allow a user to over-scroll this view only if the content is large enough to meaningfully scroll, provided it is a view that can scroll.

    Constant Value: 1 (0x00000001)

    OVER_SCROLL_NEVER

    Added in API level 9
    public static final int OVER_SCROLL_NEVER

    Never allow a user to over-scroll this view.

    Constant Value: 2 (0x00000002)

    REQUESTED_FRAME_RATE_CATEGORY_DEFAULT

    Added in API level 35
    public static final float REQUESTED_FRAME_RATE_CATEGORY_DEFAULT

    Constant Value: NaN

    REQUESTED_FRAME_RATE_CATEGORY_HIGH

    Added in API level 35
    public static final float REQUESTED_FRAME_RATE_CATEGORY_HIGH

    Constant Value: -4.0

    REQUESTED_FRAME_RATE_CATEGORY_LOW

    Added in API level 35
    public static final float REQUESTED_FRAME_RATE_CATEGORY_LOW

    Constant Value: -2.0

    REQUESTED_FRAME_RATE_CATEGORY_NORMAL

    Added in API level 35
    public static final float REQUESTED_FRAME_RATE_CATEGORY_NORMAL

    Constant Value: -3.0

    REQUESTED_FRAME_RATE_CATEGORY_NO_PREFERENCE

    Added in API level 35
    public static final float REQUESTED_FRAME_RATE_CATEGORY_NO_PREFERENCE

    Constant Value: -1.0

    SCREEN_STATE_OFF

    Added in API level 16
    public static final int SCREEN_STATE_OFF

    Indicates that the screen has changed state and is now off.

    Constant Value: 0 (0x00000000)

    SCREEN_STATE_ON

    Added in API level 16
    public static final int SCREEN_STATE_ON

    Indicates that the screen has changed state and is now on.

    Constant Value: 1 (0x00000001)

    SCROLLBARS_INSIDE_INSET

    Added in API level 1
    public static final int SCROLLBARS_INSIDE_INSET

    The scrollbar style to display the scrollbars inside the padded area, increasing the padding of the view. The scrollbars will not overlap the content area of the view.

    Constant Value: 16777216 (0x01000000)

    SCROLLBARS_INSIDE_OVERLAY

    Added in API level 1
    public static final int SCROLLBARS_INSIDE_OVERLAY

    The scrollbar style to display the scrollbars inside the content area, without increasing the padding. The scrollbars will be overlaid with translucency on the view's content.

    Constant Value: 0 (0x00000000)

    SCROLLBARS_OUTSIDE_INSET

    Added in API level 1
    public static final int SCROLLBARS_OUTSIDE_INSET

    The scrollbar style to display the scrollbars at the edge of the view, increasing the padding of the view. The scrollbars will only overlap the background, if any.

    Constant Value: 50331648 (0x03000000)

    SCROLLBARS_OUTSIDE_OVERLAY

    Added in API level 1
    public static final int SCROLLBARS_OUTSIDE_OVERLAY

    The scrollbar style to display the scrollbars at the edge of the view, without increasing the padding. The scrollbars will be overlaid with translucency.

    Constant Value: 33554432 (0x02000000)

    SCROLLBAR_POSITION_DEFAULT

    Added in API level 11
    public static final int SCROLLBAR_POSITION_DEFAULT

    Position the scroll bar at the default position as determined by the system.

    Constant Value: 0 (0x00000000)

    SCROLLBAR_POSITION_LEFT

    Added in API level 11
    public static final int SCROLLBAR_POSITION_LEFT

    Position the scroll bar along the left edge.

    Constant Value: 1 (0x00000001)

    SCROLLBAR_POSITION_RIGHT

    Added in API level 11
    public static final int SCROLLBAR_POSITION_RIGHT

    Position the scroll bar along the right edge.

    Constant Value: 2 (0x00000002)

    SCROLL_AXIS_HORIZONTAL

    Added in API level 21
    public static final int SCROLL_AXIS_HORIZONTAL

    Indicates scrolling along the horizontal axis.

    Constant Value: 1 (0x00000001)

    SCROLL_AXIS_NONE

    Added in API level 21
    public static final int SCROLL_AXIS_NONE

    Indicates no axis of view scrolling.

    Constant Value: 0 (0x00000000)

    SCROLL_AXIS_VERTICAL

    Added in API level 21
    public static final int SCROLL_AXIS_VERTICAL

    Indicates scrolling along the vertical axis.

    Constant Value: 2 (0x00000002)

    SCROLL_CAPTURE_HINT_AUTO

    Added in API level 31
    public static final int SCROLL_CAPTURE_HINT_AUTO

    The content of this view will be considered for scroll capture if scrolling is possible.

    Constant Value: 0 (0x00000000)

    SCROLL_CAPTURE_HINT_EXCLUDE

    Added in API level 31
    public static final int SCROLL_CAPTURE_HINT_EXCLUDE

    Explicitly exclude this view as a potential scroll capture target. The system will not consider it. Mutually exclusive with SCROLL_CAPTURE_HINT_INCLUDE, which this flag takes precedence over.

    Constant Value: 1 (0x00000001)

    SCROLL_CAPTURE_HINT_EXCLUDE_DESCENDANTS

    Added in API level 31
    public static final int SCROLL_CAPTURE_HINT_EXCLUDE_DESCENDANTS

    Explicitly exclude all children of this view as potential scroll capture targets. This view is unaffected. Note: Excluded children are not considered, regardless of SCROLL_CAPTURE_HINT_INCLUDE.

    Constant Value: 4 (0x00000004)

    SCROLL_CAPTURE_HINT_INCLUDE

    Added in API level 31
    public static final int SCROLL_CAPTURE_HINT_INCLUDE

    Explicitly include this view as a potential scroll capture target. When locating a scroll capture target, this view will be prioritized before others without this flag. Mutually exclusive with SCROLL_CAPTURE_HINT_EXCLUDE, which takes precedence.

    Constant Value: 2 (0x00000002)

    SCROLL_INDICATOR_BOTTOM

    Added in API level 23
    public static final int SCROLL_INDICATOR_BOTTOM

    Scroll indicator direction for the bottom edge of the view.

    Constant Value: 2 (0x00000002)

    SCROLL_INDICATOR_END

    Added in API level 23
    public static final int SCROLL_INDICATOR_END

    Scroll indicator direction for the ending edge of the view.

    Resolved according to the view's layout direction, see getLayoutDirection() for more information.

    Constant Value: 32 (0x00000020)

    SCROLL_INDICATOR_LEFT

    Added in API level 23
    public static final int SCROLL_INDICATOR_LEFT

    Scroll indicator direction for the left edge of the view.

    Constant Value: 4 (0x00000004)

    SCROLL_INDICATOR_RIGHT

    Added in API level 23
    public static final int SCROLL_INDICATOR_RIGHT

    Scroll indicator direction for the right edge of the view.

    Constant Value: 8 (0x00000008)

    SCROLL_INDICATOR_START

    Added in API level 23
    public static final int SCROLL_INDICATOR_START

    Scroll indicator direction for the starting edge of the view.

    Resolved according to the view's layout direction, see getLayoutDirection() for more information.

    Constant Value: 16 (0x00000010)

    SCROLL_INDICATOR_TOP

    Added in API level 23
    public static final int SCROLL_INDICATOR_TOP

    Scroll indicator direction for the top edge of the view.

    Constant Value: 1 (0x00000001)

    SOUND_EFFECTS_ENABLED

    Added in API level 1
    public static final int SOUND_EFFECTS_ENABLED

    View flag indicating whether this view should have sound effects enabled for events such as clicking and touching.

    Constant Value: 134217728 (0x08000000)

    STATUS_BAR_HIDDEN

    Added in API level 11
    Deprecated in API level 15
    public static final int STATUS_BAR_HIDDEN

    This constant was deprecated in API level 15.
    Use SYSTEM_UI_FLAG_LOW_PROFILE instead.

    Constant Value: 1 (0x00000001)

    STATUS_BAR_VISIBLE

    Added in API level 11
    Deprecated in API level 15
    public static final int STATUS_BAR_VISIBLE

    This constant was deprecated in API level 15.
    Use SYSTEM_UI_FLAG_VISIBLE instead.

    Constant Value: 0 (0x00000000)

    SYSTEM_UI_FLAG_FULLSCREEN

    Added in API level 16
    Deprecated in API level 30
    public static final int SYSTEM_UI_FLAG_FULLSCREEN

    This constant was deprecated in API level 30.
    Use WindowInsetsController.hide(int) with Type.statusBars() instead.

    Flag for setSystemUiVisibility(int): View has requested to go into the normal fullscreen mode so that its content can take over the screen while still allowing the user to interact with the application.

    This has the same visual effect as WindowManager.LayoutParams.FLAG_FULLSCREEN, meaning that non-critical screen decorations (such as the status bar) will be hidden while the user is in the View's window, focusing the experience on that content. Unlike the window flag, if you are using ActionBar in overlay mode with Window.FEATURE_ACTION_BAR_OVERLAY, then enabling this flag will also hide the action bar.

    This approach to going fullscreen is best used over the window flag when it is a transient state -- that is, the application does this at certain points in its user interaction where it wants to allow the user to focus on content, but not as a continuous state. For situations where the application would like to simply stay full screen the entire time (such as a game that wants to take over the screen), the window flag is usually a better approach. The state set here will be removed by the system in various situations (such as the user moving to another application) like the other system UI states.

    When using this flag, the application should provide some easy facility for the user to go out of it. A common example would be in an e-book reader, where tapping on the screen brings back whatever screen and UI decorations that had been hidden while the user was immersed in reading the book.

    Constant Value: 4 (0x00000004)

    SYSTEM_UI_FLAG_HIDE_NAVIGATION

    Added in API level 14
    Deprecated in API level 30
    public static final int SYSTEM_UI_FLAG_HIDE_NAVIGATION

    This constant was deprecated in API level 30.
    Use WindowInsetsController.hide(int) with Type.navigationBars() instead.

    Flag for setSystemUiVisibility(int): View has requested that the system navigation be temporarily hidden.

    This is an even less obtrusive state than that called for by SYSTEM_UI_FLAG_LOW_PROFILE; on devices that draw essential navigation controls (Home, Back, and the like) on screen, SYSTEM_UI_FLAG_HIDE_NAVIGATION will cause those to disappear. This is useful (in conjunction with the FLAG_FULLSCREEN and FLAG_LAYOUT_IN_SCREEN window flags) for displaying content using every last pixel on the display.

    There is a limitation: because navigation controls are so important, the least user interaction will cause them to reappear immediately. When this happens, both this flag and SYSTEM_UI_FLAG_FULLSCREEN will be cleared automatically, so that both elements reappear at the same time.

    Constant Value: 2 (0x00000002)

    SYSTEM_UI_FLAG_IMMERSIVE

    Added in API level 19
    Deprecated in API level 30
    public static final int SYSTEM_UI_FLAG_IMMERSIVE

    This constant was deprecated in API level 30.
    Use WindowInsetsController.BEHAVIOR_DEFAULT instead.

    Flag for setSystemUiVisibility(int): View would like to remain interactive when hiding the navigation bar with SYSTEM_UI_FLAG_HIDE_NAVIGATION. If this flag is not set, SYSTEM_UI_FLAG_HIDE_NAVIGATION will be force cleared by the system on any user interaction.

    Since this flag is a modifier for SYSTEM_UI_FLAG_HIDE_NAVIGATION, it only has an effect when used in combination with that flag.

    Constant Value: 2048 (0x00000800)

    SYSTEM_UI_FLAG_IMMERSIVE_STICKY

    Added in API level 19
    Deprecated in API level 30
    public static final int SYSTEM_UI_FLAG_IMMERSIVE_STICKY

    This constant was deprecated in API level 30.
    Use WindowInsetsController.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE instead.

    Flag for setSystemUiVisibility(int): View would like to remain interactive when hiding the status bar with SYSTEM_UI_FLAG_FULLSCREEN and/or hiding the navigation bar with SYSTEM_UI_FLAG_HIDE_NAVIGATION. Use this flag to create an immersive experience while also hiding the system bars. If this flag is not set, SYSTEM_UI_FLAG_HIDE_NAVIGATION will be force cleared by the system on any user interaction, and SYSTEM_UI_FLAG_FULLSCREEN will be force-cleared by the system if the user swipes from the top of the screen.

    When system bars are hidden in immersive mode, they can be revealed temporarily with system gestures, such as swiping from the top of the screen. These transient system bars will overlay app's content, may have some degree of transparency, and will automatically hide after a short timeout.

    Since this flag is a modifier for SYSTEM_UI_FLAG_FULLSCREEN and SYSTEM_UI_FLAG_HIDE_NAVIGATION, it only has an effect when used in combination with one or both of those flags.

    Constant Value: 4096 (0x00001000)

    SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN

    Added in API level 16
    Deprecated in API level 30
    public static final int SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN

    This constant was deprecated in API level 30.
    For floating windows, use LayoutParams.setFitInsetsTypes(int) with Type.statusBars() ()}. For non-floating windows that fill the screen, call Window.setDecorFitsSystemWindows(boolean) with false.

    Flag for setSystemUiVisibility(int): View would like its window to be laid out as if it has requested SYSTEM_UI_FLAG_FULLSCREEN, even if it currently hasn't. This allows it to avoid artifacts when switching in and out of that mode, at the expense that some of its user interface may be covered by screen decorations when they are shown. You can perform layout of your inner UI elements to account for non-fullscreen system UI through the fitSystemWindows(android.graphics.Rect) method.

    Note: on displays that have a DisplayCutout, the window may still be placed differently than if SYSTEM_UI_FLAG_FULLSCREEN was set, if the window's layoutInDisplayCutoutMode is LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT. To avoid this, use either of the other modes.

    Constant Value: 1024 (0x00000400)

    SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION

    Added in API level 16
    Deprecated in API level 30
    public static final int SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION

    This constant was deprecated in API level 30.
    For floating windows, use LayoutParams.setFitInsetsTypes(int) with Type.navigationBars(). For non-floating windows that fill the screen, call Window.setDecorFitsSystemWindows(boolean) with false.

    Flag for setSystemUiVisibility(int): View would like its window to be laid out as if it has requested SYSTEM_UI_FLAG_HIDE_NAVIGATION, even if it currently hasn't. This allows it to avoid artifacts when switching in and out of that mode, at the expense that some of its user interface may be covered by screen decorations when they are shown. You can perform layout of your inner UI elements to account for the navigation system UI through the fitSystemWindows(android.graphics.Rect) method.

    Constant Value: 512 (0x00000200)

    SYSTEM_UI_FLAG_LAYOUT_STABLE

    Added in API level 16
    Deprecated in API level 30
    public static final int SYSTEM_UI_FLAG_LAYOUT_STABLE

    This constant was deprecated in API level 30.
    Use WindowInsets.getInsetsIgnoringVisibility(int) instead to retrieve insets that don't change when system bars change visibility state.

    Flag for setSystemUiVisibility(int): When using other layout flags, we would like a stable view of the content insets given to fitSystemWindows(android.graphics.Rect). This means that the insets seen there will always represent the worst case that the application can expect as a continuous state. In the stock Android UI this is the space for the system bar, nav bar, and status bar, but not more transient elements such as an input method. The stable layout your UI sees is based on the system UI modes you can switch to. That is, if you specify SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN then you will get a stable layout for changes of the SYSTEM_UI_FLAG_FULLSCREEN mode; if you specify SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN and SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION, then you can transition to SYSTEM_UI_FLAG_FULLSCREEN and SYSTEM_UI_FLAG_HIDE_NAVIGATION with a stable layout. (Note that you should avoid using SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION by itself.) If you have set the window flag WindowManager.LayoutParams.FLAG_FULLSCREEN to hide the status bar (instead of using SYSTEM_UI_FLAG_FULLSCREEN), then a hidden status bar will be considered a "stable" state for purposes here. This allows your UI to continually hide the status bar, while still using the system UI flags to hide the action bar while still retaining a stable layout. Note that changing the window fullscreen flag will never provide a stable layout for a clean transition.

    If you are using ActionBar in overlay mode with Window.FEATURE_ACTION_BAR_OVERLAY, this flag will also impact the insets it adds to those given to the application.

    Constant Value: 256 (0x00000100)

    SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR

    Added in API level 26
    Deprecated in API level 30
    public static final int SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR

    This constant was deprecated in API level 30.
    Use WindowInsetsController.APPEARANCE_LIGHT_NAVIGATION_BARS instead.

    Flag for setSystemUiVisibility(int): Requests the navigation bar to draw in a mode that is compatible with light navigation bar backgrounds.

    For this to take effect, the window must request FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS but not FLAG_TRANSLUCENT_NAVIGATION.

    Constant Value: 16 (0x00000010)

    SYSTEM_UI_FLAG_LIGHT_STATUS_BAR

    Added in API level 23
    Deprecated in API level 30
    public static final int SYSTEM_UI_FLAG_LIGHT_STATUS_BAR

    This constant was deprecated in API level 30.
    Use WindowInsetsController.APPEARANCE_LIGHT_STATUS_BARS instead.

    Flag for setSystemUiVisibility(int): Requests the status bar to draw in a mode that is compatible with light status bar backgrounds.

    For this to take effect, the window must request FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS but not FLAG_TRANSLUCENT_STATUS.

    Constant Value: 8192 (0x00002000)

    SYSTEM_UI_FLAG_LOW_PROFILE

    Added in API level 14
    Deprecated in API level 30
    public static final int SYSTEM_UI_FLAG_LOW_PROFILE

    This constant was deprecated in API level 30.
    Low profile mode is deprecated. Hide the system bars instead if the application needs to be in a unobtrusive mode. Use WindowInsetsController.hide(int) with Type.systemBars().

    Flag for setSystemUiVisibility(int): View has requested the system UI to enter an unobtrusive "low profile" mode.

    This is for use in games, book readers, video players, or any other "immersive" application where the usual system chrome is deemed too distracting.

    In low profile mode, the status bar and/or navigation icons may dim.

    Constant Value: 1 (0x00000001)

    SYSTEM_UI_FLAG_VISIBLE

    Added in API level 14
    Deprecated in API level 30
    public static final int SYSTEM_UI_FLAG_VISIBLE

    This constant was deprecated in API level 30.
    SystemUiVisibility flags are deprecated. Use WindowInsetsController instead.

    Special constant for setSystemUiVisibility(int): View has requested the system UI (status bar) to be visible (the default).

    Constant Value: 0 (0x00000000)

    SYSTEM_UI_LAYOUT_FLAGS

    Added in API level 16
    Deprecated in API level 30
    public static final int SYSTEM_UI_LAYOUT_FLAGS

    This constant was deprecated in API level 30.
    System UI layout flags are deprecated.

    Flags that can impact the layout in relation to system UI.

    Constant Value: 1536 (0x00000600)

    TEXT_ALIGNMENT_CENTER

    Added in API level 17
    public static final int TEXT_ALIGNMENT_CENTER

    Center the paragraph, e.g. ALIGN_CENTER. Use with setTextAlignment(int)

    Constant Value: 4 (0x00000004)

    TEXT_ALIGNMENT_GRAVITY

    Added in API level 17
    public static final int TEXT_ALIGNMENT_GRAVITY

    Default for the root view. The gravity determines the text alignment, ALIGN_NORMAL, ALIGN_CENTER, or ALIGN_OPPOSITE, which are relative to each paragraph's text direction. Use with setTextAlignment(int)

    Constant Value: 1 (0x00000001)

    TEXT_ALIGNMENT_INHERIT

    Added in API level 16
    public static final int TEXT_ALIGNMENT_INHERIT

    Default text alignment. The text alignment of this View is inherited from its parent. Use with setTextAlignment(int)

    Constant Value: 0 (0x00000000)

    TEXT_ALIGNMENT_TEXT_END

    Added in API level 17
    public static final int TEXT_ALIGNMENT_TEXT_END

    Align to the end of the paragraph, e.g. ALIGN_OPPOSITE. Use with setTextAlignment(int)

    Constant Value: 3 (0x00000003)

    TEXT_ALIGNMENT_TEXT_START

    Added in API level 17
    public static final int TEXT_ALIGNMENT_TEXT_START

    Align to the start of the paragraph, e.g. ALIGN_NORMAL. Use with setTextAlignment(int)

    Constant Value: 2 (0x00000002)

    TEXT_ALIGNMENT_VIEW_END

    Added in API level 17
    public static final int TEXT_ALIGNMENT_VIEW_END

    Align to the end of the view, which is ALIGN_RIGHT if the view's resolved layoutDirection is LTR, and ALIGN_LEFT otherwise. Use with setTextAlignment(int)

    Constant Value: 6 (0x00000006)

    TEXT_ALIGNMENT_VIEW_START

    Added in API level 17
    public static final int TEXT_ALIGNMENT_VIEW_START

    Align to the start of the view, which is ALIGN_LEFT if the view's resolved layoutDirection is LTR, and ALIGN_RIGHT otherwise. Use with setTextAlignment(int)

    Constant Value: 5 (0x00000005)

    TEXT_DIRECTION_ANY_RTL

    Added in API level 17
    public static final int TEXT_DIRECTION_ANY_RTL

    Text direction is using "any-RTL" algorithm. The paragraph direction is RTL if it contains any strong RTL character, otherwise it is LTR if it contains any strong LTR characters. If there are neither, the paragraph direction is the view's resolved layout direction.

    Constant Value: 2 (0x00000002)

    TEXT_DIRECTION_FIRST_STRONG

    Added in API level 17
    public static final int TEXT_DIRECTION_FIRST_STRONG

    Text direction is using "first strong algorithm". The first strong directional character determines the paragraph direction. If there is no strong directional character, the paragraph direction is the view's resolved layout direction.

    Constant Value: 1 (0x00000001)

    TEXT_DIRECTION_FIRST_STRONG_LTR

    Added in API level 23
    public static final int TEXT_DIRECTION_FIRST_STRONG_LTR

    Text direction is using "first strong algorithm". The first strong directional character determines the paragraph direction. If there is no strong directional character, the paragraph direction is LTR.

    Constant Value: 6 (0x00000006)

    TEXT_DIRECTION_FIRST_STRONG_RTL

    Added in API level 23
    public static final int TEXT_DIRECTION_FIRST_STRONG_RTL

    Text direction is using "first strong algorithm". The first strong directional character determines the paragraph direction. If there is no strong directional character, the paragraph direction is RTL.

    Constant Value: 7 (0x00000007)

    TEXT_DIRECTION_INHERIT

    Added in API level 17
    public static final int TEXT_DIRECTION_INHERIT

    Text direction is inherited through ViewGroup

    Constant Value: 0 (0x00000000)

    TEXT_DIRECTION_LOCALE

    Added in API level 17
    public static final int TEXT_DIRECTION_LOCALE

    Text direction is coming from the system Locale.

    Constant Value: 5 (0x00000005)

    TEXT_DIRECTION_LTR

    Added in API level 17
    public static final int TEXT_DIRECTION_LTR

    Text direction is forced to LTR.

    Constant Value: 3 (0x00000003)

    TEXT_DIRECTION_RTL

    Added in API level 17
    public static final int TEXT_DIRECTION_RTL

    Text direction is forced to RTL.

    Constant Value: 4 (0x00000004)

    VIEW_LOG_TAG

    Added in API level 1
    protected static final String VIEW_LOG_TAG

    The logging tag used by this class with android.util.Log.

    Constant Value: "View"

    VISIBLE

    Added in API level 1
    public static final int VISIBLE

    This view is visible. Use with setVisibility(int) and android:visibility.

    Constant Value: 0 (0x00000000)

    Fields

    ALPHA

    public static final Property<ViewFloat> ALPHA

    A Property wrapper around the alpha functionality handled by the View.setAlpha(float) and View.getAlpha() methods.

    EMPTY_STATE_SET

    Added in API level 1
    protected static final int[] EMPTY_STATE_SET

    Indicates the view has no states set. States are used with Drawable to change the drawing of the view depending on its state.

    ENABLED_FOCUSED_SELECTED_STATE_SET

    Added in API level 1
    protected static final int[] ENABLED_FOCUSED_SELECTED_STATE_SET

    Indicates the view is enabled, focused and selected.

    ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is enabled, focused, selected and its window has the focus.

    ENABLED_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] ENABLED_FOCUSED_STATE_SET

    Indicates the view is enabled and has the focus.

    ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is enabled, focused and its window has the focus.

    ENABLED_SELECTED_STATE_SET

    Added in API level 1
    protected static final int[] ENABLED_SELECTED_STATE_SET

    Indicates the view is enabled and selected.

    ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is enabled, selected and its window has the focus.

    ENABLED_STATE_SET

    Added in API level 1
    protected static final int[] ENABLED_STATE_SET

    Indicates the view is enabled. States are used with Drawable to change the drawing of the view depending on its state.

    ENABLED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] ENABLED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is enabled and that its window has focus.

    FOCUSED_SELECTED_STATE_SET

    Added in API level 1
    protected static final int[] FOCUSED_SELECTED_STATE_SET

    Indicates the view is focused and selected.

    FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is focused, selected and its window has the focus.

    FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] FOCUSED_STATE_SET

    Indicates the view is focused. States are used with Drawable to change the drawing of the view depending on its state.

    FOCUSED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] FOCUSED_WINDOW_FOCUSED_STATE_SET

    Indicates the view has the focus and that its window has the focus.

    PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET

    Indicates the view is pressed, enabled, focused and selected.

    PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is pressed, enabled, focused, selected and its window has the focus.

    PRESSED_ENABLED_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_ENABLED_FOCUSED_STATE_SET

    Indicates the view is pressed, enabled and focused.

    PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is pressed, enabled, focused and its window has the focus.

    PRESSED_ENABLED_SELECTED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_ENABLED_SELECTED_STATE_SET

    Indicates the view is pressed, enabled and selected.

    PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is pressed, enabled, selected and its window has the focus.

    PRESSED_ENABLED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_ENABLED_STATE_SET

    Indicates the view is pressed and enabled.

    PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is pressed, enabled and its window has the focus.

    PRESSED_FOCUSED_SELECTED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_FOCUSED_SELECTED_STATE_SET

    Indicates the view is pressed, focused and selected.

    PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is pressed, focused, selected and its window has the focus.

    PRESSED_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_FOCUSED_STATE_SET

    Indicates the view is pressed and focused.

    PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is pressed, focused and its window has the focus.

    PRESSED_SELECTED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_SELECTED_STATE_SET

    Indicates the view is pressed and selected.

    PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is pressed, selected and its window has the focus.

    PRESSED_STATE_SET

    Added in API level 19
    protected static final int[] PRESSED_STATE_SET

    Indicates the view is pressed. States are used with Drawable to change the drawing of the view depending on its state.

    PRESSED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] PRESSED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is pressed and its window has the focus.

    ROTATION

    Added in API level 14
    public static final Property<ViewFloat> ROTATION

    A Property wrapper around the rotation functionality handled by the View.setRotation(float) and View.getRotation() methods.

    ROTATION_X

    Added in API level 14
    public static final Property<ViewFloat> ROTATION_X

    A Property wrapper around the rotationX functionality handled by the View.setRotationX(float) and View.getRotationX() methods.

    ROTATION_Y

    Added in API level 14
    public static final Property<ViewFloat> ROTATION_Y

    A Property wrapper around the rotationY functionality handled by the View.setRotationY(float) and View.getRotationY() methods.

    SCALE_X

    Added in API level 14
    public static final Property<ViewFloat> SCALE_X

    A Property wrapper around the scaleX functionality handled by the View.setScaleX(float) and View.getScaleX() methods.

    SCALE_Y

    Added in API level 14
    public static final Property<ViewFloat> SCALE_Y

    A Property wrapper around the scaleY functionality handled by the View.setScaleY(float) and View.getScaleY() methods.

    SELECTED_STATE_SET

    Added in API level 1
    protected static final int[] SELECTED_STATE_SET

    Indicates the view is selected. States are used with Drawable to change the drawing of the view depending on its state.

    SELECTED_WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] SELECTED_WINDOW_FOCUSED_STATE_SET

    Indicates the view is selected and that its window has the focus.

    TRANSLATION_X

    Added in API level 14
    public static final Property<ViewFloat> TRANSLATION_X

    A Property wrapper around the translationX functionality handled by the View.setTranslationX(float) and View.getTranslationX() methods.

    TRANSLATION_Y

    Added in API level 14
    public static final Property<ViewFloat> TRANSLATION_Y

    A Property wrapper around the translationY functionality handled by the View.setTranslationY(float) and View.getTranslationY() methods.

    TRANSLATION_Z

    Added in API level 21
    public static final Property<ViewFloat> TRANSLATION_Z

    A Property wrapper around the translationZ functionality handled by the View.setTranslationZ(float) and View.getTranslationZ() methods.

    WINDOW_FOCUSED_STATE_SET

    Added in API level 1
    protected static final int[] WINDOW_FOCUSED_STATE_SET

    Indicates the view's window has focus. States are used with Drawable to change the drawing of the view depending on its state.

    X

    Added in API level 14
    public static final Property<ViewFloat> X

    A Property wrapper around the x functionality handled by the View.setX(float) and View.getX() methods.

    Y

    Added in API level 14
    public static final Property<ViewFloat> Y

    A Property wrapper around the y functionality handled by the View.setY(float) and View.getY() methods.

    Z

    Added in API level 21
    public static final Property<ViewFloat> Z

    A Property wrapper around the z functionality handled by the View.setZ(float) and View.getZ() methods.

    Public constructors

    View

    Added in API level 1
    public View (Context context)

    Simple constructor to use when creating a view from code.

    Parameters
    context Context: The Context the view is running in, through which it can access the current theme, resources, etc.

    View

    Added in API level 1
    public View (Context context, 
                    AttributeSet attrs)

    Constructor that is called when inflating a view from XML. This is called when a view is being constructed from an XML file, supplying attributes that were specified in the XML file. This version uses a default style of 0, so the only attribute values applied are those in the Context's Theme and the given AttributeSet.

    The method onFinishInflate() will be called after all children have been added.

    Parameters
    context Context: The Context the view is running in, through which it can access the current theme, resources, etc.

    attrs AttributeSet: The attributes of the XML tag that is inflating the view. This value may be null.

    View

    Added in API level 1
    public View (Context context, 
                    AttributeSet attrs, 
                    int defStyleAttr)

    Perform inflation from XML and apply a class-specific base style from a theme attribute. This constructor of View allows subclasses to use their own base style when they are inflating. For example, a Button class's constructor would call this version of the super class constructor and supply R.attr.buttonStyle for defStyleAttr; this allows the theme's button style to modify all of the base view attributes (in particular its background) as well as the Button class's attributes.

    Parameters
    context Context: The Context the view is running in, through which it can access the current theme, resources, etc.

    attrs AttributeSet: The attributes of the XML tag that is inflating the view. This value may be null.

    defStyleAttr int: An attribute in the current theme that contains a reference to a style resource that supplies default values for the view. Can be 0 to not look for defaults.

    View

    Added in API level 21
    public View (Context context, 
                    AttributeSet attrs, 
                    int defStyleAttr, 
                    int defStyleRes)

    Perform inflation from XML and apply a class-specific base style from a theme attribute or style resource. This constructor of View allows subclasses to use their own base style when they are inflating.

    When determining the final value of a particular attribute, there are four inputs that come into play:

    1. Any attribute values in the given AttributeSet.
    2. The style resource specified in the AttributeSet (named "style").
    3. The default style specified by defStyleAttr.
    4. The default style specified by defStyleRes.
    5. The base values in this theme.

    Each of these inputs is considered in-order, with the first listed taking precedence over the following ones. In other words, if in the AttributeSet you have supplied <Button * textColor="#ff000000"> , then the button's text will always be black, regardless of what is specified in any of the styles.

    Parameters
    context Context: The Context the view is running in, through which it can access the current theme, resources, etc.

    attrs AttributeSet: The attributes of the XML tag that is inflating the view. This value may be null.

    defStyleAttr int: An attribute in the current theme that contains a reference to a style resource that supplies default values for the view. Can be 0 to not look for defaults.

    defStyleRes int: A resource identifier of a style resource that supplies default values for the view, used only if defStyleAttr is 0 or can not be found in the theme. Can be 0 to not look for defaults.

    Public methods

    addChildrenForAccessibility

    Added in API level 16
    public void addChildrenForAccessibility (ArrayList<View> outChildren)

    Adds the children of this View relevant for accessibility to the given list as output. Since some Views are not important for accessibility the added child views are not necessarily direct children of this view, rather they are the first level of descendants important for accessibility.

    Parameters
    outChildren ArrayList: The output list that will receive children for accessibility.

    addExtraDataToAccessibilityNodeInfo

    Added in API level 26
    public void addExtraDataToAccessibilityNodeInfo (AccessibilityNodeInfo info, 
                    String extraDataKey, 
                    Bundle arguments)

    Adds extra data to an AccessibilityNodeInfo based on an explicit request for the additional data.

    This method only needs overloading if the node is marked as having extra data available.

    Parameters
    info AccessibilityNodeInfo: The info to which to add the extra data. Never null.

    extraDataKey String: A key specifying the type of extra data to add to the info. The extra data should be added to the Bundle returned by the info's AccessibilityNodeInfo.getExtras method. Never null.

    arguments Bundle: A Bundle holding any arguments relevant for this request. May be null if the service provided no arguments.

    addFocusables

    Added in API level 1
    public void addFocusables (ArrayList<View> views, 
                    int direction)

    Add any focusable views that are descendants of this view (possibly including this view if it is focusable itself) to views. If we are in touch mode, only add views that are also focusable in touch mode.

    Parameters
    views ArrayList: Focusable views found so far

    direction int: The direction of the focus Value is FOCUS_BACKWARD, FOCUS_FORWARD, FOCUS_LEFT, FOCUS_UP, FOCUS_RIGHT, or FOCUS_DOWN

    addFocusables

    Added in API level 4
    public void addFocusables (ArrayList<View> views, 
                    int direction, 
                    int focusableMode)

    Adds any focusable views that are descendants of this view (possibly including this view if it is focusable itself) to views. This method adds all focusable views regardless if we are in touch mode or only views focusable in touch mode if we are in touch mode or only views that can take accessibility focus if accessibility is enabled depending on the focusable mode parameter.

    Parameters
    views ArrayList: Focusable views found so far or null if all we are interested is the number of focusables.

    direction int: The direction of the focus. Value is FOCUS_BACKWARD, FOCUS_FORWARD, FOCUS_LEFT, FOCUS_UP, FOCUS_RIGHT, or FOCUS_DOWN

    focusableMode int: The type of focusables to be added. Value is either 0 or a combination of FOCUSABLES_ALL, and FOCUSABLES_TOUCH_MODE

    addKeyboardNavigationClusters

    Added in API level 26
    public void addKeyboardNavigationClusters (Collection<View> views, 
                    int direction)

    Adds any keyboard navigation cluster roots that are descendants of this view (possibly including this view if it is a cluster root itself) to views.

    Parameters
    views Collection: Keyboard navigation cluster roots found so far This value cannot be null.

    direction int: Direction to look

    addOnAttachStateChangeListener

    Added in API level 12
    public void addOnAttachStateChangeListener (View.OnAttachStateChangeListener listener)

    Add a listener for attach state changes. This listener will be called whenever this view is attached or detached from a window. Remove the listener using removeOnAttachStateChangeListener(android.view.View.OnAttachStateChangeListener).

    Parameters
    listener View.OnAttachStateChangeListener: Listener to attach

    addOnLayoutChangeListener

    Added in API level 11
    public void addOnLayoutChangeListener (View.OnLayoutChangeListener listener)

    Add a listener that will be called when the bounds of the view change due to layout processing.

    Parameters
    listener View.OnLayoutChangeListener: The listener that will be called when layout bounds change.

    addOnUnhandledKeyEventListener

    Added in API level 28
    public void addOnUnhandledKeyEventListener (View.OnUnhandledKeyEventListener listener)

    Adds a listener which will receive unhandled KeyEvents. This must be called on the UI thread.

    Parameters
    listener View.OnUnhandledKeyEventListener: a receiver of unhandled KeyEvents.

    addTouchables

    Added in API level 1
    public void addTouchables (ArrayList<View> views)

    Add any touchable views that are descendants of this view (possibly including this view if it is touchable itself) to views.

    Parameters
    views ArrayList: Touchable views found so far

    animate

    Added in API level 12
    public ViewPropertyAnimator animate ()

    This method returns a ViewPropertyAnimator object, which can be used to animate specific properties on this View.

    Returns
    ViewPropertyAnimator ViewPropertyAnimator The ViewPropertyAnimator associated with this View.

    announceForAccessibility

    Added in API level 16
    Deprecated in API level 36
    public void announceForAccessibility (CharSequence text)

    This method was deprecated in API level 36.
    Use one of the methods described in the documentation above to semantically describe UI instead of using an announcement, as accessibility services may choose to ignore events dispatched with this method.

    Convenience method for sending a AccessibilityEvent.TYPE_ANNOUNCEMENT AccessibilityEvent to suggest that an accessibility service announce the specified text to its users.

    Note: The event generated with this API carries no semantic meaning, and accessibility services may choose to ignore it. Apps that accurately supply accessibility with the semantics of their UI should not need to specify what exactly is announced.

    In general, do not attempt to generate announcements as confirmation message for simple actions like a button press. Label your controls concisely and precisely instead.

    To convey significant UI changes like window changes, use Activity.setTitle(CharSequence) and setAccessibilityPaneTitle(java.lang.CharSequence).

    Use setAccessibilityLiveRegion(int) to inform the user of changes to critical views within the user interface. These should still be used sparingly as they may generate announcements every time a View is updated.

    Use setStateDescription(java.lang.CharSequence) to convey state changes to views within the user interface. While a live region may send different types of events generated by the view, state description will send AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED events of type AccessibilityEvent.CONTENT_CHANGE_TYPE_STATE_DESCRIPTION.

    For notifying users about errors, such as in a login screen with text that displays an "incorrect password" notification, set AccessibilityNodeInfo.setError(CharSequence) and dispatch an AccessibilityEvent.TYPE_WINDOW_CONTENT_CHANGED event with a change type of AccessibilityEvent.CONTENT_CHANGE_TYPE_ERROR, instead. Some widgets may expose methods that convey error states to accessibility automatically, such as TextView.setError(CharSequence), which manages these accessibility semantics and event dispatch for callers.

    Parameters
    text CharSequence: The announcement text.

    autofill

    Added in API level 26
    public void autofill (AutofillValue value)

    Automatically fills the content of this view with the value.

    Views support the Autofill Framework mainly by:

    • Providing the metadata defining what the view means and how it can be autofilled.
    • Implementing the methods that autofill the view.

    onProvideAutofillStructure(android.view.ViewStructure, int) is responsible for the former, this method is responsible for latter.

    This method does nothing by default, but when overridden it typically:

    1. Checks if the provided value matches the expected type (which is defined by getAutofillType()).
    2. Checks if the view is editable - if it isn't, it should return right away.
    3. Call the proper getter method on AutofillValue to fetch the actual value.
    4. Pass the actual value to the equivalent setter in the view.

    For example, a text-field view could implement the method this way:

     @Override
     public void autofill(AutofillValue value) {
       if (!value.isText() || !this.isEditable()) {
          return;
       }
       CharSequence text = value.getTextValue();
       if (text != null) {
         this.setText(text);
       }
     }
     

    If the value is updated asynchronously, the next call to AutofillManager.notifyValueChanged(View) must happen after the value was changed to the autofilled value. If not, the view will not be considered autofilled.

    Note: After this method is called, the value returned by getAutofillValue() must be equal to the value passed to it, otherwise the view will not be highlighted as autofilled.

    Parameters
    value AutofillValue: value to be autofilled.

    autofill

    Added in API level 26
    public void autofill (SparseArray<AutofillValue> values)

    Automatically fills the content of the virtual children within this view.

    Views with virtual children support the Autofill Framework mainly by:

    • Providing the metadata defining what the virtual children mean and how they can be autofilled.
    • Implementing the methods that autofill the virtual children.

    onProvideAutofillVirtualStructure(android.view.ViewStructure, int) is responsible for the former, this method is responsible for the latter - see autofill(android.view.autofill.AutofillValue) and onProvideAutofillVirtualStructure(android.view.ViewStructure, int) for more info about autofill.

    If a child value is updated asynchronously, the next call to AutofillManager.notifyValueChanged(View, int, AutofillValue) must happen after the value was changed to the autofilled value. If not, the child will not be considered autofilled.

    Note: To indicate that a virtual view was autofilled, ?android:attr/autofilledHighlight should be drawn over it until the data changes.

    Related XML Attributes:

    Parameters
    values SparseArray: map of values to be autofilled, keyed by virtual child id. This value cannot be null.

    bringToFront

    Added in API level 1
    public void bringToFront ()

    Change the view's z order in the tree, so it's on top of other sibling views. This ordering change may affect layout, if the parent container uses an order-dependent layout scheme (e.g., LinearLayout). Prior to Build.VERSION_CODES.KITKAT this method should be followed by calls to requestLayout() and View.invalidate() on the view's parent to force the parent to redraw with the new child ordering.

    buildDrawingCache

    Added in API level 4
    Deprecated in API level 28
    public void buildDrawingCache (boolean autoScale)

    This method was deprecated in API level 28.
    The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

    Forces the drawing cache to be built if the drawing cache is invalid.

    If you call buildDrawingCache() manually without calling setDrawingCacheEnabled(true), you should cleanup the cache by calling destroyDrawingCache() afterwards.

    Note about auto scaling in compatibility mode: When auto scaling is not enabled, this method will create a bitmap of the same size as this view. Because this bitmap will be drawn scaled by the parent ViewGroup, the result on screen might show scaling artifacts. To avoid such artifacts, you should call this method by setting the auto scaling to true. Doing so, however, will generate a bitmap of a different size than the view. This implies that your application must be able to handle this size.

    You should avoid calling this method when hardware acceleration is enabled. If you do not need the drawing cache bitmap, calling this method will increase memory usage and cause the view to be rendered in software once, thus negatively impacting performance.

    Parameters
    autoScale boolean

    buildDrawingCache

    Added in API level 1
    Deprecated in API level 28
    public void buildDrawingCache ()

    This method was deprecated in API level 28.
    The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

    Calling this method is equivalent to calling buildDrawingCache(false).

    buildLayer

    Added in API level 12
    public void buildLayer ()

    Forces this view's layer to be created and this view to be rendered into its layer. If this view's layer type is set to LAYER_TYPE_NONE, invoking this method will have no effect. This method can for instance be used to render a view into its layer before starting an animation. If this view is complex, rendering into the layer before starting the animation will avoid skipping frames.

    Throws
    IllegalStateException If this view is not attached to a window

    callOnClick

    Added in API level 15
    public boolean callOnClick ()

    Directly call any attached OnClickListener. Unlike performClick(), this only calls the listener, and does not do any associated clicking actions like reporting an accessibility event.

    Returns
    boolean True there was an assigned OnClickListener that was called, false otherwise is returned.

    canResolveLayoutDirection

    Added in API level 19
    public boolean canResolveLayoutDirection ()

    Check if layout direction resolution can be done.

    Returns
    boolean true if layout direction resolution can be done otherwise return false.

    canResolveTextAlignment

    Added in API level 19
    public boolean canResolveTextAlignment ()

    Check if text alignment resolution can be done.

    Returns
    boolean true if text alignment resolution can be done otherwise return false.

    canResolveTextDirection

    Added in API level 19
    public boolean canResolveTextDirection ()

    Check if text direction resolution can be done.

    Returns
    boolean true if text direction resolution can be done otherwise return false.

    canScrollHorizontally

    Added in API level 14
    public boolean canScrollHorizontally (int direction)

    Check if this view can be scrolled horizontally in a certain direction.

    This is without regard to whether the view is enabled or not, or if it will scroll in response to user input or not.

    Parameters
    direction int: Negative to check scrolling left, positive to check scrolling right.

    Returns
    boolean true if this view can be scrolled in the specified direction, false otherwise.

    canScrollVertically

    Added in API level 14
    public boolean canScrollVertically (int direction)

    Check if this view can be scrolled vertically in a certain direction.

    This is without regard to whether the view is enabled or not, or if it will scroll in response to user input or not.

    Parameters
    direction int: Negative to check scrolling up, positive to check scrolling down.

    Returns
    boolean true if this view can be scrolled in the specified direction, false otherwise.

    cancelDragAndDrop

    Added in API level 24
    public final void cancelDragAndDrop ()

    Cancels an ongoing drag and drop operation.

    A DragEvent object with DragEvent.getAction() value of DragEvent.ACTION_DRAG_ENDED and DragEvent.getResult() value of false will be sent to every View that received DragEvent.ACTION_DRAG_STARTED even if they are not currently visible.

    This method can be called on any View in the same window as the View on which startDragAndDrop was called.

    cancelLongPress

    Added in API level 1
    public void cancelLongPress ()

    Cancels a pending long press. Your subclass can use this if you want the context menu to come up if the user presses and holds at the same place, but you don't want it to come up if they press and then move around enough to cause scrolling.

    cancelPendingInputEvents

    Added in API level 19
    public final void cancelPendingInputEvents ()

    Cancel any deferred high-level input events that were previously posted to the event queue.

    Many views post high-level events such as click handlers to the event queue to run deferred in order to preserve a desired user experience - clearing visible pressed states before executing, etc. This method will abort any events of this nature that are currently in flight.

    Custom views that generate their own high-level deferred input events should override onCancelPendingInputEvents() and remove those pending events from the queue.

    This will also cancel pending input events for any child views.

    Note that this may not be sufficient as a debouncing strategy for clicks in all cases. This will not impact newer events posted after this call that may occur as a result of lower-level input events still waiting in the queue. If you are trying to prevent double-submitted events for the duration of some sort of asynchronous transaction you should also take other steps to protect against unexpected double inputs e.g. calling setEnabled(false) and re-enabling the view when the transaction completes, tracking already submitted transaction IDs, etc.

    checkInputConnectionProxy

    Added in API level 3
    public boolean checkInputConnectionProxy (View view)

    Called by the InputMethodManager when a view who is not the current input connection target is trying to make a call on the manager. The default implementation returns false; you can override this to return true for certain views if you are performing InputConnection proxying to them.

    Parameters
    view View: The View that is making the InputMethodManager call.

    Returns
    boolean Return true to allow the call, false to reject.

    clearAnimation

    Added in API level 1
    public void clearAnimation ()

    Cancels any animations for this view.

    clearFocus

    Added in API level 1
    public void clearFocus ()

    Called when this view wants to give up focus. If focus is cleared onFocusChanged(boolean, int, android.graphics.Rect) is called.

    Note: When not in touch-mode, the framework will try to give focus to the first focusable View from the top after focus is cleared. Hence, if this View is the first from the top that can take focus, then all callbacks related to clearing focus will be invoked after which the framework will give focus to this view.

    clearPendingCredentialRequest

    Added in API level 35
    public void clearPendingCredentialRequest ()

    Clears the request and callback previously set through View.setPendingCredentialRequest. Once this API is invoked, there will be no request fired to CredentialManager on future view focus events.

    clearViewTranslationCallback

    Added in API level 31
    public void clearViewTranslationCallback ()

    Clear the ViewTranslationCallback from this view.

    combineMeasuredStates

    Added in API level 11
    public static int combineMeasuredStates (int curState, 
                    int newState)

    Merge two states as returned by getMeasuredState().

    Parameters
    curState int: The current state as returned from a view or the result of combining multiple views.

    newState int: The new view state to combine.

    Returns
    int Returns a new integer reflecting the combination of the two states.

    computeScroll

    Added in API level 1
    public void computeScroll ()

    Called by a parent to request that a child update its values for mScrollX and mScrollY if necessary. This will typically be done if the child is animating a scroll using a Scroller object.

    computeSystemWindowInsets

    Added in API level 21
    public WindowInsets computeSystemWindowInsets (WindowInsets in, 
                    Rect outLocalInsets)

    Compute insets that should be consumed by this view and the ones that should propagate to those under it.

    Parameters
    in WindowInsets: Insets currently being processed by this View, likely received as a parameter to onApplyWindowInsets(android.view.WindowInsets).

    outLocalInsets Rect: A Rect that will receive the insets that should be consumed by this view

    Returns
    WindowInsets Insets that should be passed along to views under this one

    createAccessibilityNodeInfo

    Added in API level 14
    public AccessibilityNodeInfo createAccessibilityNodeInfo ()

    Returns an AccessibilityNodeInfo representing this view from the point of view of an AccessibilityService. This method is responsible for obtaining an accessibility node info from a pool of reusable instances and calling onInitializeAccessibilityNodeInfo(android.view.accessibility.AccessibilityNodeInfo) on this view to initialize the former.

    Note: The client is responsible for recycling the obtained instance by calling AccessibilityNodeInfo.recycle() to minimize object creation.

    Returns
    AccessibilityNodeInfo A populated AccessibilityNodeInfo.

    createContextMenu

    Added in API level 1
    public void createContextMenu (ContextMenu menu)

    Show the context menu for this view. It is not safe to hold on to the menu after returning from this method. You should normally not overload this method. Overload onCreateContextMenu(android.view.ContextMenu) or define an OnCreateContextMenuListener to add items to the context menu.

    Parameters
    menu ContextMenu: The context menu to populate

    destroyDrawingCache

    Added in API level 1
    Deprecated in API level 28
    public void destroyDrawingCache ()

    This method was deprecated in API level 28.
    The view drawing cache was largely made obsolete with the introduction of hardware-accelerated rendering in API 11. With hardware-acceleration, intermediate cache layers are largely unnecessary and can easily result in a net loss in performance due to the cost of creating and updating the layer. In the rare cases where caching layers are useful, such as for alpha animations, setLayerType(int, android.graphics.Paint) handles this with hardware rendering. For software-rendered snapshots of a small part of the View hierarchy or individual Views it is recommended to create a Canvas from either a Bitmap or Picture and call draw(android.graphics.Canvas) on the View. However these software-rendered usages are discouraged and have compatibility issues with hardware-only rendering features such as Config.HARDWARE bitmaps, real-time shadows, and outline clipping. For screenshots of the UI for feedback reports or unit testing the PixelCopy API is recommended.

    Frees the resources used by the drawing cache. If you call buildDrawingCache() manually without calling setDrawingCacheEnabled(true), you should cleanup the cache with this method afterwards.

    dispatchApplyWindowInsets

    Added in API level 20
    public WindowInsets dispatchApplyWindowInsets (WindowInsets insets)

    Request to apply the given window insets to this view or another view in its subtree.

    This method should be called by clients wishing to apply insets corresponding to areas obscured by window decorations or overlays. This can include the status and navigation bars, action bars, input methods and more. New inset categories may be added in the future. The method returns the insets provided minus any that were applied by this view or its children.

    Clients wishing to provide custom behavior should override the onApplyWindowInsets(android.view.WindowInsets) method or alternatively provide a OnApplyWindowInsetsListener via the setOnApplyWindowInsetsListener method.

    This method replaces the older fitSystemWindows method.

    Parameters
    insets WindowInsets: Insets to apply

    Returns
    WindowInsets The provided insets minus the insets that were consumed

    dispatchCapturedPointerEvent

    Added in API level 26
    public boolean dispatchCapturedPointerEvent (MotionEvent event)

    Pass a captured pointer event down to the focused view.

    Parameters
    event MotionEvent: The motion event to be dispatched.

    Returns
    boolean True if the event was handled by the view, false otherwise.

    dispatchConfigurationChanged

    Added in API level 8
    public void dispatchConfigurationChanged (Configuration newConfig)

    Dispatch a notification about a resource configuration change down the view hierarchy. ViewGroups should override to route to their children.

    Parameters
    newConfig Configuration: The new resource configuration.

    dispatchCreateViewTranslationRequest

    Added in API level 31
    public void dispatchCreateViewTranslationRequest (Map<AutofillId, long[]> viewIds, 
                    int[] supportedFormats, 
                    TranslationCapability capability, 
                    List<ViewTranslationRequest> requests)

    Dispatch to collect the ViewTranslationRequests for translation purpose by traversing the hierarchy when the app requests ui translation. Typically, this method should only be overridden by subclasses that provide a view hierarchy (such as ViewGroup). Other classes should override View.onCreateViewTranslationRequest for normal view or override View.onVirtualViewTranslationResponses for view contains virtual children. When requested to start the ui translation, the system will call this method to traverse the view hierarchy to collect ViewTranslationRequests and create a Translator to translate the requests. All the ViewTranslationRequests must be added when the traversal is done.

    The default implementation calls View.onCreateViewTranslationRequest for normal view or calls View.onVirtualViewTranslationResponses for view contains virtual children to build ViewTranslationRequest if the view should be translated. The view is marked as having transient state so that recycling of views doesn't prevent the system from attaching the response to it. Therefore, if overriding this method, you should set or reset the transient state.

    Parameters
    viewIds Map: a map for the view's AutofillId and its virtual child ids or null if the view doesn't have virtual child that should be translated. The virtual child ids are the same virtual ids provided by ContentCapture.

    supportedFormats int: the supported translation formats. For now, the only possible value is the TranslationSpec.DATA_FORMAT_TEXT. This value cannot be null. Value is TranslationSpec.DATA_FORMAT_TEXT

    capability TranslationCapability: a TranslationCapability that holds translation capability. information, e.g. source spec, target spec. This value cannot be null.

    requests List: fill in with ViewTranslationRequests for translation purpose. This value cannot be null.

    dispatchDisplayHint

    Added in API level 8
    public void dispatchDisplayHint (int hint)

    Dispatch a hint about whether this view is displayed. For instance, when a View moves out of the screen, it might receives a display hint indicating the view is not displayed. Applications should not rely on this hint as there is no guarantee that they will receive one.

    Parameters
    hint int: A hint about whether or not this view is displayed: VISIBLE or INVISIBLE. Value is VISIBLE, INVISIBLE, or GONE

    dispatchDragEvent

    Added in API level 11
    public boolean dispatchDragEvent (DragEvent event)

    Detects if this View is enabled and has a drag event listener. If both are true, then it calls the drag event listener with the DragEvent it received. If the drag event listener returns true, then dispatchDragEvent() returns true.

    For all other cases, the method calls the onDragEvent() drag event handler method and returns its result.

    This ensures that a drag event is always consumed, even if the View does not have a drag event listener. However, if the View has a listener and the listener returns true, then onDragEvent() is not called.

    Parameters
    event DragEvent

    Returns
    boolean

    dispatchDrawableHotspotChanged

    Added in API level 22
    public void dispatchDrawableHotspotChanged (float x, 
                    float y)

    Dispatches drawableHotspotChanged to all of this View's children.

    Parameters
    x float: hotspot x coordinate

    y float: hotspot y coordinate

    dispatchFinishTemporaryDetach

    Added in API level 24
    public void dispatchFinishTemporaryDetach ()

    Dispatch onFinishTemporaryDetach() to this View and its direct children if this is a container View.
    If you override this method you must call through to the superclass implementation.

    dispatchGenericMotionEvent

    Added in API level 12
    public boolean dispatchGenericMotionEvent (MotionEvent event)

    Dispatch a generic motion event.

    Generic motion events with source class InputDevice.SOURCE_CLASS_POINTER are delivered to the view under the pointer. All other generic motion events are delivered to the focused view. Hover events are handled specially and are delivered to onHoverEvent(android.view.MotionEvent) first.

    Parameters
    event MotionEvent: The motion event to be dispatched.

    Returns
    boolean True if the event was handled by the view, false otherwise.

    dispatchKeyEvent

    Added in API level 1
    public boolean dispatchKeyEvent (KeyEvent event)

    Dispatch a key event to the next view on the focus path. This path runs from the top of the view tree down to the currently focused view. If this view has focus, it will dispatch to itself. Otherwise it will dispatch the next node down the focus path. This method also fires any key listeners.

    Parameters
    event KeyEvent: The key event to be dispatched.

    Returns
    boolean True if the event was handled, false otherwise.

    dispatchKeyEventPreIme

    Added in API level 3
    public boolean dispatchKeyEventPreIme (KeyEvent event)

    Dispatch a key event before it is processed by any input method associated with the view hierarchy. This can be used to intercept key events in special situations before the IME consumes them; a typical example would be handling the BACK key to update the application's UI instead of allowing the IME to see it and close itself.

    Parameters
    event KeyEvent: The key event to be dispatched.

    Returns
    boolean True if the event was handled, false otherwise.

    dispatchKeyShortcutEvent

    Added in API level 1
    public boolean dispatchKeyShortcutEvent (KeyEvent event)

    Dispatches a key shortcut event.

    Parameters
    event KeyEvent: The key event to be dispatched.

    Returns
    boolean True if the event was handled by the view, false otherwise.

    dispatchNestedFling

    Added in API level 21
    public boolean dispatchNestedFling (float velocityX, 
                    float velocityY, 
                    boolean consumed)

    Dispatch a fling to a nested scrolling parent.

    This method should be used to indicate that a nested scrolling child has detected suitable conditions for a fling. Generally this means that a touch scroll has ended with a velocity in the direction of scrolling that meets or exceeds the minimum fling velocity along a scrollable axis.

    If a nested scrolling child view would normally fling but it is at the edge of its own content, it can use this method to delegate the fling to its nested scrolling parent instead. The parent may optionally consume the fling or observe a child fling.

    Parameters
    velocityX float: Horizontal fling velocity in pixels per second

    velocityY float: Vertical fling velocity in pixels per second

    consumed boolean: true if the child consumed the fling, false otherwise

    Returns
    boolean true if the nested scrolling parent consumed or otherwise reacted to the fling

    dispatchNestedPreFling

    Added in API level 21
    public boolean dispatchNestedPreFling (float velocityX, 
                    float velocityY)

    Dispatch a fling to a nested scrolling parent before it is processed by this view.

    Nested pre-fling events are to nested fling events what touch intercept is to touch and what nested pre-scroll is to nested scroll. dispatchNestedPreFling offsets an opportunity for the parent view in a nested fling to fully consume the fling before the child view consumes it. If this method returns true, a nested parent view consumed the fling and this view should not scroll as a result.

    For a better user experience, only one view in a nested scrolling chain should consume the fling at a time. If a parent view consumed the fling this method will return false. Custom view implementations should account for this in two ways:

    • If a custom view is paged and needs to settle to a fixed page-point, do not call dispatchNestedPreFling; consume the fling and settle to a valid position regardless.
    • If a nested parent does consume the fling, this view should not scroll at all, even to settle back to a valid idle position.

    Views should also not offer fling velocities to nested parent views along an axis where scrolling is not currently supported; a ScrollView should not offer a horizontal fling velocity to its parents since scrolling along that axis is not permitted and carrying velocity along that motion does not make sense.

    Parameters
    velocityX float: Horizontal fling velocity in pixels per second

    velocityY float: Vertical fling velocity in pixels per second

    Returns
    boolean true if a nested scrolling parent consumed the fling

    dispatchNestedPrePerformAccessibilityAction

    Added in API level 22
    public boolean dispatchNestedPrePerformAccessibilityAction (int action, 
                    Bundle arguments)

    Report an accessibility action to this view's parents for delegated processing.

    Implementations of performAccessibilityAction(int, android.os.Bundle) may internally call this method to delegate an accessibility action to a supporting parent. If the parent returns true from its ViewParent.onNestedPrePerformAccessibilityAction(View, int, android.os.Bundle) method this method will return true to signify that the action was consumed.

    This method is useful for implementing nested scrolling child views. If isNestedScrollingEnabled() returns true and the action is a scrolling action a custom view implementation may invoke this method to allow a parent to consume the scroll first. If this method returns true the custom view should skip its own scrolling behavior.

    Parameters
    action int: Accessibility action to delegate

    arguments Bundle: Optional action arguments This value may be null.

    Returns
    boolean true if the action was consumed by a parent

    dispatchNestedPreScroll

    Added in API level 21
    public boolean dispatchNestedPreScroll (int dx, 
                    int dy, 
                    int[] consumed, 
                    int[] offsetInWindow)

    Dispatch one step of a nested scroll in progress before this view consumes any portion of it.

    Nested pre-scroll events are to nested scroll events what touch intercept is to touch. dispatchNestedPreScroll offers an opportunity for the parent view in a nested scrolling operation to consume some or all of the scroll operation before the child view consumes it.

    Parameters
    dx int: Horizontal scroll distance in pixels

    dy int: Vertical scroll distance in pixels

    consumed int: Output. If not null, consumed[0] will contain the consumed component of dx and consumed[1] the consumed dy.

    offsetInWindow int: Optional. If not null, on return this will contain the offset in local view coordinates of this view from before this operation to after it completes. View implementations may use this to adjust expected input coordinate tracking.

    Returns
    boolean true if the parent consumed some or all of the scroll delta

    dispatchNestedScroll

    Added in API level 21
    public boolean dispatchNestedScroll (int dxConsumed, 
                    int dyConsumed, 
                    int dxUnconsumed, 
                    int dyUnconsumed, 
                    int[] offsetInWindow)

    Dispatch one step of a nested scroll in progress.

    Implementations of views that support nested scrolling should call this to report info about a scroll in progress to the current nested scrolling parent. If a nested scroll is not currently in progress or nested scrolling is not enabled for this view this method does nothing.

    Compatible View implementations should also call dispatchNestedPreScroll before consuming a component of the scroll event themselves.

    Parameters
    dxConsumed int: Horizontal distance in pixels consumed by this view during this scroll step

    dyConsumed int: Vertical distance in pixels consumed by this view during this scroll step

    dxUnconsumed int: Horizontal scroll distance in pixels not consumed by this view

    dyUnconsumed int: Horizontal scroll distance in pixels not consumed by this view

    offsetInWindow int: Optional. If not null, on return this will contain the offset in local view coordinates of this view from before this operation to after it completes. View implementations may use this to adjust expected input coordinate tracking.

    Returns
    boolean true if the event was dispatched, false if it could not be dispatched.

    dispatchPointerCaptureChanged

    Added in API level 26
    public void dispatchPointerCaptureChanged (boolean hasCapture)

    Parameters
    hasCapture boolean

    dispatchPopulateAccessibilityEvent

    Added in API level 4
    public boolean dispatchPopulateAccessibilityEvent (AccessibilityEvent event)

    Dispatches an AccessibilityEvent to the View to add the text content of the view and its children.

    Note: This method should only be used with event.setText(). Avoid mutating other event state in this method. In general, put UI metadata in the node for services to easily query.

    Note that the event text is populated in a separate dispatch path (onPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent)) since we add to the event not only the text of the source but also the text of all its descendants.

    A typical implementation will call onPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent) on this view and then call the dispatchPopulateAccessibilityEvent(android.view.accessibility.AccessibilityEvent) on each child or the first child that is visible. Override this method if custom population of the event text content is required.

    If an AccessibilityDelegate has been specified via calling setAccessibilityDelegate(android.view.View.AccessibilityDelegate) its AccessibilityDelegate.dispatchPopulateAccessibilityEvent(View, AccessibilityEvent) is responsible for handling this call.

    If this view sets isAccessibilityDataSensitive() then this view should only append sensitive information to an event that also sets AccessibilityEvent.isAccessibilityDataSensitive().

    Note: Accessibility events of certain types are not dispatched for populating the event text via this method. For details refer to AccessibilityEvent.

    Parameters
    event AccessibilityEvent: The event.

    Returns
    boolean True if the event population was completed.

    dispatchProvideAutofillStructure

    Added in API level 26
    public void dispatchProvideAutofillStructure (ViewStructure structure, 
                    int flags)

    Dispatches creation of a ViewStructures for autofill purposes down the hierarchy, when an Assist structure is being created as part of an autofill request.

    The default implementation does the following:

    Typically, this method should only be overridden by subclasses that provide a view hierarchy (such as ViewGroup) - other classes should override onProvideAutofillStructure(android.view.ViewStructure, int) or onProvideAutofillVirtualStructure(android.view.ViewStructure, int) instead.

    When overridden, it must:

    • Either call super.dispatchProvideAutofillStructure(structure, flags) or explicitly set the AutofillId in the structure (for example, by calling structure.setAutofillId(getAutofillId())).
    • Decide how to handle the AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS flag - when set, all views in the structure should be considered important for autofill, regardless of what isImportantForAutofill() returns. We encourage you to respect this flag to provide a better user experience - this flag is typically used when an user explicitly requested autofill. If the flag is not set, then only views marked as important for autofill should be included in the structure - skipping non-important views optimizes the overall autofill performance.

    Parameters
    structure ViewStructure: fill in with structured view data for autofill purposes. This value cannot be null