WindowInsetsCompat
open class WindowInsetsCompat
kotlin.Any | |
↳ | androidx.core.view.WindowInsetsCompat |
Describes a set of insets for window content.
WindowInsetsCompats are immutable and may be expanded to include more inset types in the future. To adjust insets, use one of the supplied clone methods to obtain a new WindowInsetsCompat instance with the adjusted properties.
Summary
Nested classes | |
---|---|
Builder for |
|
Class that defines different types of sources causing window insets. |
Public constructors | |
---|---|
<init>(@Nullable src: WindowInsetsCompat?) Constructs a new WindowInsetsCompat, copying all values from a source WindowInsetsCompat. |
Public methods | |
---|---|
open WindowInsetsCompat |
Returns a copy of this WindowInsets with the cutout fully consumed. |
open WindowInsetsCompat |
Returns a copy of this WindowInsets with the stable insets fully consumed. |
open WindowInsetsCompat |
Returns a copy of this WindowInsets with the system window insets fully consumed. |
open Boolean | |
open DisplayCutoutCompat? |
Returns the display cutout if there is one. |
open Insets |
Returns the insets of a specific set of windows causing insets, denoted by the |
open Insets |
getInsetsIgnoringVisibility(typeMask: Int) Returns the insets a specific set of windows can cause, denoted by the |
open Insets |
Returns the mandatory system gesture insets. |
open Int |
Returns the bottom stable inset in pixels. |
open Int |
Returns the left stable inset in pixels. |
open Int |
Returns the right stable inset in pixels. |
open Int |
Returns the top stable inset in pixels. |
open Insets |
Returns the stable insets in pixels. |
open Insets |
Returns the system gesture insets. |
open Int |
Returns the bottom system window inset in pixels. |
open Int |
Returns the left system window inset in pixels. |
open Int |
Returns the right system window inset in pixels. |
open Int |
Returns the top system window inset in pixels. |
open Insets |
Returns the system window insets in pixels. |
open Insets |
Returns the tappable element insets. |
open Boolean |
Returns true if this WindowInsets has any non-zero insets. |
open Boolean |
Returns true if this WindowInsets has nonzero stable insets. |
open Boolean |
Returns true if this WindowInsets has nonzero system window insets. |
open Int |
hashCode() |
open WindowInsetsCompat |
Returns a copy of this instance inset in the given directions. |
open WindowInsetsCompat |
inset(@IntRange(0) left: Int, @IntRange(0) top: Int, @IntRange(0) right: Int, @IntRange(0) bottom: Int) Returns a copy of this instance inset in the given directions. |
open Boolean |
Check if these insets have been fully consumed. |
open Boolean |
isRound() Returns true if the associated window has a round shape. |
open Boolean |
Returns whether a set of windows that may cause insets is currently visible on screen, regardless of whether it actually overlaps with this window. |
open WindowInsetsCompat |
replaceSystemWindowInsets(left: Int, top: Int, right: Int, bottom: Int) Returns a copy of this WindowInsets with selected system window insets replaced with new values. |
open WindowInsetsCompat |
replaceSystemWindowInsets(@NonNull systemWindowInsets: Rect) Returns a copy of this WindowInsets with selected system window insets replaced with new values. |
open WindowInsets? |
Return the source |
open static WindowInsetsCompat |
toWindowInsetsCompat(@NonNull insets: WindowInsets) Wrap an instance of |
open static WindowInsetsCompat |
toWindowInsetsCompat(@NonNull insets: WindowInsets, @Nullable view: View?) Wrap an instance of |
Properties | |
---|---|
static WindowInsetsCompat |
A |
Public constructors
<init>
WindowInsetsCompat(@Nullable src: WindowInsetsCompat?)
Constructs a new WindowInsetsCompat, copying all values from a source WindowInsetsCompat.
Parameters | |
---|---|
src |
WindowInsetsCompat?: source from which values are copied |
Public methods
consumeDisplayCutout
@NonNull open funconsumeDisplayCutout(): WindowInsetsCompat
Deprecated: Consuming of different parts individually of a WindowInsetsCompat
instance is deprecated, since WindowInsetsCompat
contains many different insets. Use CONSUMED
instead to stop dispatching insets.
Returns a copy of this WindowInsets with the cutout fully consumed.
When running on platforms with API 27 and below, this method is a no-op.
Return | |
---|---|
WindowInsetsCompat |
A modified copy of this WindowInsets |
consumeStableInsets
@NonNull open funconsumeStableInsets(): WindowInsetsCompat
Deprecated: Consuming of different parts individually of a WindowInsetsCompat
instance is deprecated, since WindowInsetsCompat
contains many different insets. Use CONSUMED
instead to stop dispatching insets.
Returns a copy of this WindowInsets with the stable insets fully consumed.
When running on platforms with API 20 and below, this method always returns null
.
Return | |
---|---|
WindowInsetsCompat |
A modified copy of this WindowInsetsCompat |
consumeSystemWindowInsets
@NonNull open funconsumeSystemWindowInsets(): WindowInsetsCompat
Deprecated: Consuming of different parts individually of a WindowInsetsCompat
instance is deprecated, since WindowInsetsCompat
contains many different insets. Use CONSUMED
instead to stop dispatching insets.
Returns a copy of this WindowInsets with the system window insets fully consumed.
When running on platforms with API 19 and below, this method always returns null
.
Return | |
---|---|
WindowInsetsCompat |
A modified copy of this WindowInsets |
getDisplayCutout
@Nullable open fun getDisplayCutout(): DisplayCutoutCompat?
Returns the display cutout if there is one.
When running on platforms with API 27 and below, this method always returns null
.
Return | |
---|---|
DisplayCutoutCompat? |
the display cutout or null if there is none |
See Also
getInsets
@NonNull open fun getInsets(typeMask: Int): Insets
Returns the insets of a specific set of windows causing insets, denoted by the typeMask
bit mask of Type
s. When running on devices with API Level 29 and before, the returned insets are an approximation based on the information available. This is especially true for the
type, which currently only works when running on devices with SDK level 23 and above.
Parameters | |
---|---|
typeMask |
Int: Bit mask of Type s to query the insets for. |
Return | |
---|---|
Insets |
The insets. |
getInsetsIgnoringVisibility
@NonNull open fun getInsetsIgnoringVisibility(typeMask: Int): Insets
Returns the insets a specific set of windows can cause, denoted by the typeMask
bit mask of Type
s, regardless of whether that type is currently visible or not.
The insets represents the area of a a window that that may be partially or fully obscured by the system window identified by typeMask
. This value does not change based on the visibility state of those elements. For example, if the status bar is normally shown, but temporarily hidden, the inset returned here will still provide the inset associated with the status bar being shown.
type, which currently only works when running on devices with SDK level 23 and above.
Parameters | |
---|---|
typeMask |
Int: Bit mask of Type s to query the insets for. |
Return | |
---|---|
Insets |
The insets. |
Exceptions | |
---|---|
IllegalArgumentException |
If the caller tries to query Type#ime() . Insets are not available if the IME isn't visible as the height of the IME is dynamic depending on the EditorInfo of the currently focused view, as well as the UI state of the IME. |
getMandatorySystemGestureInsets
@NonNull open fungetMandatorySystemGestureInsets(): Insets
Deprecated: Use getInsets(int)
with Type#mandatorySystemGestures()
instead.
Returns the mandatory system gesture insets.
The mandatory system gesture insets represent the area of a window where mandatory system gestures have priority and may consume some or all touch input, e.g. due to the a system bar occupying it, or it being reserved for touch-only gestures.
getStableInsetBottom
open fungetStableInsetBottom(): Int
Deprecated: Use getInsetsIgnoringVisibility(int)
with Type#systemBars()
instead.
Returns the bottom stable inset in pixels.
The stable ins