GetMaterialApp class

A fully customized MaterialApp designed to be the entry point for GetXify applications.

It extends MaterialApp capabilities by seamlessly integrating:

  • Routing: Built-in declarative routing via getPages or standard routes.
  • State Management: Dependency injection configuration using binds.
  • Theming: Dynamic theme swapping and transition management.
  • Localization: Simple language setup with translations and locale.

Use GetMaterialApp.router to construct an app using the Router API, supplying a routerConfig or custom routerDelegate.

Inheritance
Available extensions

Constructors

GetMaterialApp({Key? key, GlobalKey<NavigatorState>? navigatorKey, GlobalKey<ScaffoldMessengerState>? scaffoldMessengerKey, Widget? home, Map<String, Widget Function(BuildContext)> routes = const <String, WidgetBuilder>{}, String? initialRoute, RouteFactory? onGenerateRoute, InitialRouteListFactory? onGenerateInitialRoutes, RouteFactory? onUnknownRoute, bool useInheritedMediaQuery = false, List<NavigatorObserver> navigatorObservers = const <NavigatorObserver>[], TransitionBuilder? builder, TextDirection? textDirection, String title = '', GenerateAppTitle? onGenerateTitle, Color? color, ThemeData? theme, ThemeData? darkTheme, ThemeMode themeMode = ThemeMode.system, Locale? locale, Locale? fallbackLocale, Iterable<LocalizationsDelegate>? localizationsDelegates, LocaleListResolutionCallback? localeListResolutionCallback, LocaleResolutionCallback? localeResolutionCallback, Iterable<Locale> supportedLocales = const <Locale>[Locale('en', 'US')], bool debugShowMaterialGrid = false, bool showPerformanceOverlay = false, bool checkerboardRasterCacheImages = false, bool checkerboardOffscreenLayers = false, bool showSemanticsDebugger = false, bool debugShowCheckedModeBanner = true, Map<ShortcutActivator, Intent>? shortcuts, ScrollBehavior? scrollBehavior, CustomTransition? customTransition, Map<String, Map<String, String>>? translationsKeys, Translations? translations, VoidCallback? onInit, VoidCallback? onReady, VoidCallback? onDispose, ValueChanged<Routing?>? routingCallback, Transition? defaultTransition, List<GetPage>? getPages, bool? opaqueRoute, bool? enableLog = kDebugMode, LogWriterCallback? logWriterCallback, bool? popGesture, Duration? transitionDuration, bool? defaultGlobalState, List<Bind> binds = const [], GetPage? unknownRoute, ThemeData? highContrastTheme, ThemeData? highContrastDarkTheme, Map<Type, Action<Intent>>? actions, String? restorationScopeId})
Creates a GetMaterialApp instance for a standard GetX application.
const
GetMaterialApp.router({Key? key, RouteInformationProvider? routeInformationProvider, GlobalKey<ScaffoldMessengerState>? scaffoldMessengerKey, RouteInformationParser<Object>? routeInformationParser, RouterDelegate<Object>? routerDelegate, RouterConfig<Object>? routerConfig, BackButtonDispatcher? backButtonDispatcher, TransitionBuilder? builder, String title = '', GenerateAppTitle? onGenerateTitle, Color? color, ThemeData? theme, ThemeData? darkTheme, bool useInheritedMediaQuery = false, ThemeData? highContrastTheme, ThemeData? highContrastDarkTheme, ThemeMode themeMode = ThemeMode.system, Locale? locale, Iterable<LocalizationsDelegate>? localizationsDelegates, LocaleListResolutionCallback? localeListResolutionCallback, LocaleResolutionCallback? localeResolutionCallback, Iterable<Locale> supportedLocales = const <Locale>[Locale('en', 'US')], bool debugShowMaterialGrid = false, bool showPerformanceOverlay = false, bool checkerboardRasterCacheImages = false, bool checkerboardOffscreenLayers = false, bool showSemanticsDebugger = false, bool debugShowCheckedModeBanner = true, Map<ShortcutActivator, Intent>? shortcuts, ScrollBehavior? scrollBehavior, Map<Type, Action<Intent>>? actions, CustomTransition? customTransition, Map<String, Map<String, String>>? translationsKeys, Translations? translations, TextDirection? textDirection, Locale? fallbackLocale, ValueChanged<Routing?>? routingCallback, Transition? defaultTransition, bool? opaqueRoute, VoidCallback? onInit, VoidCallback? onReady, VoidCallback? onDispose, bool? enableLog = kDebugMode, LogWriterCallback? logWriterCallback, bool? popGesture, List<Bind> binds = const [], Duration? transitionDuration, bool? defaultGlobalState, List<GetPage>? getPages, List<NavigatorObserver>? navigatorObservers, GetPage? unknownRoute, String? restorationScopeId})
Creates a GetMaterialApp that uses the standard Flutter Router API.
const

Properties

actions → Map<Type, Action<Intent>>?
final
backButtonDispatcher → BackButtonDispatcher?
final
binds → List<Bind>
final
builder → TransitionBuilder?
final
checkerboardOffscreenLayers → bool
final
checkerboardRasterCacheImages → bool
final
color → Color?
final
customTransition → CustomTransition?
final
darkTheme → ThemeData?
final
debugShowCheckedModeBanner → bool
final
debugShowMaterialGrid → bool
final
defaultGlobalState → bool?
final
defaultTransition → Transition?
final
enableLog → bool?
final
fallbackLocale → Locale?
final
getPages → List<GetPage>?
final
hashCode → int
The hash code for this object.
no setterinherited
highContrastDarkTheme → ThemeData?
final
highContrastTheme → ThemeData?
final
home → Widget?
final
initialRoute → String?
final
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
locale → Locale?
final
localeListResolutionCallback → LocaleListResolutionCallback?
final
localeResolutionCallback → LocaleResolutionCallback?
final
localizationsDelegates → Iterable<LocalizationsDelegate>?
final
logWriterCallback → LogWriterCallback?
final
final
final
onDispose → VoidCallback?
final
onGenerateInitialRoutes → InitialRouteListFactory?
final
onGenerateRoute → RouteFactory?
final
onGenerateTitle → GenerateAppTitle?
final
onInit → VoidCallback?
final
onReady → VoidCallback?
final
onUnknownRoute → RouteFactory?
final
opaqueRoute → bool?
final
popGesture → bool?
final
restorationScopeId → String?
The identifier to use for state restoration of this app.
final
routeInformationParser → RouteInformationParser<Object>?
final
routeInformationProvider → RouteInformationProvider?
final
routerConfig → RouterConfig<Object>?
final
routerDelegate → RouterDelegate<Object>?
final
routes → Map<String, WidgetBuilder>?
final
routingCallback → ValueChanged<Routing?>?
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
scaffoldMessengerKey → GlobalKey<ScaffoldMessengerState>?
final
scrollBehavior → ScrollBehavior?
final
shortcuts → Map<ShortcutActivator, Intent>?
final
showPerformanceOverlay → bool
final
showSemanticsDebugger → bool
final
supportedLocales → Iterable<Locale>
final
textDirection → TextDirection?
final
theme → ThemeData?
final
themeMode → ThemeMode
final
title → String
final
transitionDuration → Duration?
final
translations → Translations?
final
translationsKeys → Map<String, Map<String, String>>?
final
unknownRoute → GetPage?
final
useInheritedMediaQuery → bool
final

Methods

blur({double begin = 0, double end = 15, Duration duration = _defaultDuration, Duration delay = _defaultDelay, ValueSetter<AnimationController>? onComplete, bool isSequential = false, bool autoPlayOnUpdate = false}) → GetAnimatedBuilder

Available on Widget, provided by the AnimationExtension extension

Blurs the widget from begin to end sigma factor.
bounce({required double begin, required double end, Duration duration = _defaultDuration, Duration delay = _defaultDelay, ValueSetter<AnimationController>? onComplete, bool isSequential = false, bool autoPlayOnUpdate = false}) → GetAnimatedBuilder

Available on Widget, provided by the AnimationExtension extension

Bounces the scale of the widget from begin to end.
build(BuildContext context) → Widget
Describes the part of the user interface represented by this widget.
override
createElement() → StatelessElement
Creates a StatelessElement to manage this widget's location in the tree.
inherited
debugDescribeChildren() → List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
fadeIn({Duration duration = _defaultDuration, Duration delay = _defaultDelay, ValueSetter<AnimationController>? onComplete, bool isSequential = false, bool autoPlayOnUpdate = false}) → GetAnimatedBuilder

Available on Widget, provided by the AnimationExtension extension

Animates the widget's opacity from 0.0 to 1.0.
fadeOut({Duration duration = _defaultDuration, Duration delay = _defaultDelay, ValueSetter<AnimationController>? onComplete, bool isSequential = false, bool autoPlayOnUpdate = false}) → GetAnimatedBuilder

Available on Widget, provided by the AnimationExtension extension

Animates the widget's opacity from 1.0 to 0.0.
flip({double begin = 0, double end = 1, Duration duration = _defaultDuration, Duration delay = _defaultDelay, ValueSetter<AnimationController>? onComplete, bool isSequential = false, bool autoPlayOnUpdate = false}) → GetAnimatedBuilder

Available on Widget, provided by the AnimationExtension extension

Flips the widget around the Y-axis from begin to end.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
rotate({required double begin, required double end, Duration duration = _defaultDuration, Duration delay = _defaultDelay, ValueSetter<AnimationController>? onComplete, bool isSequential = false, bool autoPlayOnUpdate = false}) → GetAnimatedBuilder

Available on Widget, provided by the AnimationExtension extension

Rotates the widget from begin to end angle in radians.
scale({required double begin, required double end, Duration duration = _defaultDuration, Duration delay = _defaultDelay, ValueSetter<AnimationController>? onComplete, bool isSequential = false, bool autoPlayOnUpdate = false}) → GetAnimatedBuilder

Available on Widget, provided by the AnimationExtension extension

Scales the widget from begin to end factor.
size({required double begin, required double end, Duration duration = _defaultDuration, Duration delay = _defaultDelay, ValueSetter<AnimationController>? onComplete, bool isSequential = false, bool autoPlayOnUpdate = false}) → GetAnimatedBuilder

Available on Widget, provided by the AnimationExtension extension

Animates the widget's layout size/scale from begin to end.
slide({required OffsetBuilder offset, double begin = 0, double end = 1, Duration duration = _defaultDuration, Duration delay = _defaultDelay, ValueSetter<AnimationController>? onComplete, bool isSequential = false, bool autoPlayOnUpdate = false}) → GetAnimatedBuilder

Available on Widget, provided by the AnimationExtension extension

Translates/slides the widget dynamically using an offset builder.
spin({Duration duration = _defaultDuration, Duration delay = _defaultDelay, ValueSetter<AnimationController>? onComplete, bool isSequential = false, bool autoPlayOnUpdate = false}) → GetAnimatedBuilder

Available on Widget, provided by the AnimationExtension extension

Spins the widget 360 degrees.
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) → String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String
Returns a one-line detailed description of the object.
inherited
toStringShort() → String
A short, textual description of this widget.
inherited
wave({double begin = 0, double end = 1, Duration duration = _defaultDuration, Duration delay = _defaultDelay, ValueSetter<AnimationController>? onComplete, bool isSequential = false, bool autoPlayOnUpdate = false}) → GetAnimatedBuilder

Available on Widget, provided by the AnimationExtension extension

Animates the widget with a translation wave on the Y-axis.

Operators

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