GetMaterialApp 属性及解释

3,095 阅读3分钟

GetMaterialApp 是 Flutter 应用程序的顶层 widget,它提供了一个 Material Design 风格的应用程序外观。以下是 GetMaterialApp 的所有属性及其解释:

title

  • 类型:String
  • 默认值:''
  • 描述:应用程序的标题,将显示在操作系统的任务切换器中。

home

  • 类型:Widget
  • 默认值:null
  • 描述:应用程序的默认页面。

initialRoute

  • 类型:String
  • 默认值:null
  • 描述:应用程序的初始路由名称,当应用程序启动时将显示该路由。

routes

  • 类型:Map<String, WidgetBuilder>
  • 默认值:null
  • 描述:应用程序的路由表,用于定义命名路由和它们对应的 widget。

onGenerateRoute

  • 类型:RouteFactory
  • 默认值:null
  • 描述:如果定义了一个命名路由,但没有找到相应的 widget,则该函数将被调用来生成路由。

onUnknownRoute

  • 类型:RouteFactory
  • 默认值:null
  • 描述:如果定义了一个未知的命名路由,该函数将被调用来生成路由。

navigatorObservers

  • 类型:List<NavigatorObserver>
  • 默认值:[]
  • 描述:用于监听应用程序导航器的一组对象。

theme

  • 类型:ThemeData
  • 默认值:null
  • 描述:应用程序的主题数据,用于设置应用程序的颜色、字体、形状等样式。

darkTheme

  • 类型:ThemeData
  • 默认值:null
  • 描述:应用程序的暗黑主题数据,用于设置应用程序在暗黑模式下的样式。

themeMode

  • 类型:ThemeMode
  • 默认值:ThemeMode.system
  • 描述:应用程序的主题模式,用于控制应用程序的颜色和样式是否跟随系统设置。

locale

  • 类型:Locale
  • 默认值:null
  • 描述:应用程序的区域设置,用于控制应用程序的语言、数字格式和货币格式等。

fallbackLocale

  • 类型:Locale
  • 默认值:null
  • 描述:应用程序的备用区域设置,当应用程序不支持用户的首选区域设置时使用。

localizationsDelegates

  • 类型:List<LocalizationsDelegate<dynamic>>
  • 默认值:[]
  • 描述:应用程序的本地化委托列表,用于提供应用程序的本地化字符串。

supportedLocales

  • 类型:List<Locale>
  • 默认值:[]
  • 描述:应用程序支持的区域设置列表,用于提供应用程序的本地化字符串。

navigatorKey

  • 类型:GlobalKey<NavigatorState>
  • 默认值:null
  • 描述:应用

GetX相关

getPages

  • 类型:List<GetPage>
  • 默认值:[]
  • 描述:定义应用程序的所有页面及其对应的路由。

unknownRoute

  • 类型:GetPage
  • 默认值:null
  • 描述:定义应用程序的未知路由,当无法找到特定路由时,将会使用该路由。

routingCallback

  • 类型:RoutingCallback
  • 默认值:null
  • 描述:定义全局的路由回调,在路由发生变化时会调用该回调。

backGestureWidth

  • 类型:double
  • 默认值:20.0
  • 描述:定义返回手势的宽度。

enableLog

  • 类型:bool
  • 默认值:false
  • 描述:定义是否启用 GetX 的日志记录。

logWriterCallback

  • 类型:LogWriterCallback
  • 默认值:null
  • 描述:定义自定义的日志记录器回调函数。

defaultTransition

  • 类型:Transition
  • 默认值:Transition.fade
  • 描述:定义默认的页面过渡动画。

transitionDuration

  • 类型:Duration
  • 默认值:Duration(milliseconds: 300)
  • 描述:定义默认的页面过渡动画的时长。

opaqueRoute

  • 类型:bool
  • 默认值:true
  • 描述:定义是否使用不透明的路由。

popGesture

  • 类型:bool
  • 默认值:true
  • 描述:定义是否启用返回手势。

defaultOpaqueRoute

  • 类型:bool
  • 默认值:true
  • 描述:定义默认路由是否不透明。

defaultPopGesture

  • 类型:bool
  • 默认值:true
  • 描述:定义默认是否启用返回手势。

smartManagement

  • 类型:SmartManagement
  • 默认值:SmartManagement.full
  • 描述:定义全局状态管理的智能管理策略。

initialBinding

  • 类型:Bind<Object>
  • 默认值:null
  • 描述:定义在应用程序启动时要绑定的依赖项。

bindings

  • 类型:List<Bindings>
  • 默认值:[]
  • 描述:定义要绑定到路由的依赖项。

transitionDurationFactory

  • 类型:TransitionDurationFactory
  • 默认值:null