SystemUiMode enum Null safety

Describes different display configurations for both Android and iOS.

These modes mimic Android-specific display setups.

Used by SystemChrome.setEnabledSystemUIMode.

Inheritance

Constructors

SystemUiMode()
const

Values

leanBack → const SystemUiMode

Fullscreen display with status and navigation bars presentable by tapping anywhere on the display.

Available starting at SDK 16 or Android J. Earlier versions of Android will not be affected by this setting.

For applications running on iOS, the status bar and home indicator will be hidden for a similar fullscreen experience.

Tapping on the screen displays overlays, this gesture is not received by the application.

See also:

SystemUiMode()
immersive → const SystemUiMode

Fullscreen display with status and navigation bars presentable through a swipe gesture at the edges of the display.

Available starting at SDK 19 or Android K. Earlier versions of Android will not be affected by this setting.

For applications running on iOS, the status bar and home indicator will be hidden for a similar fullscreen experience.

A swipe gesture from the edge of the screen displays overlays. In contrast to SystemUiMode.immersiveSticky, this gesture is not received by the application.

See also:

SystemUiMode()
immersiveSticky → const SystemUiMode

Fullscreen display with status and navigation bars presentable through a swipe gesture at the edges of the display.

Available starting at SDK 19 or Android K. Earlier versions of Android will not be affected by this setting.

For applications running on iOS, the status bar and home indicator will be hidden for a similar fullscreen experience.

A swipe gesture from the edge of the screen displays overlays. In contrast to SystemUiMode.immersive, this gesture is received by the application.

See also:

SystemUiMode()
edgeToEdge → const SystemUiMode

Fullscreen display with status and navigation elements rendered over the application.

Available starting at SDK 29 or Android 10. Earlier versions of Android will not be affected by this setting.

For applications running on iOS, the status bar and home indicator will be visible.

The system overlays will not disappear or reappear in this mode as they are permanently displayed on top of the application.

See also:

  • SystemUiOverlayStyle, can be used to configure transparent status and navigation bars with or without a contrast scrim.
SystemUiMode()
manual → const SystemUiMode

Declares manually configured SystemUiOverlays.

When using this mode with SystemChrome.setEnabledSystemUIMode, the preferred overlays must be set by the developer.

When SystemUiOverlay.top is enabled, the status bar will remain visible on all platforms. Omitting this overlay will hide the status bar on iOS & Android.

When SystemUiOverlay.bottom is enabled, the navigation bar and home indicator of Android and iOS applications will remain visible. Omitting this overlay will hide them.

Omitting both overlays will result in the same configuration as SystemUiMode.leanBack.

SystemUiMode()

Properties

hashCode int
The hash code for this object.
read-only, inherited
index int
A numeric identifier for the enumerated value.
read-only, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Constants

values → const List<SystemUiMode>
A constant List of the values in this enum, in order of their declaration.
[leanBack, immersive, immersiveSticky, edgeToEdge, manual]