AppBar constructor

AppBar({Key key, Widget leading, bool automaticallyImplyLeading: true, Widget title, List<Widget> actions, Widget flexibleSpace, PreferredSizeWidget bottom, double elevation, ShapeBorder shape, Color backgroundColor, Brightness brightness, IconThemeData iconTheme, IconThemeData actionsIconTheme, TextTheme textTheme, bool primary: true, bool centerTitle, double titleSpacing: NavigationToolbar.kMiddleSpacing, double toolbarOpacity: 1.0, double bottomOpacity: 1.0 })

Creates a material design app bar.

The arguments primary, toolbarOpacity, bottomOpacity and automaticallyImplyLeading must not be null. Additionally, if elevation is specified, it must be non-negative.

If backgroundColor, elevation, brightness, iconTheme, actionsIconTheme, or textTheme are null, then their AppBarTheme values will be used. If the corresponding AppBarTheme property is null, then the default specified in the property's documentation will be used.

Typically used in the Scaffold.appBar property.

Implementation

AppBar({
  Key key,
  this.leading,
  this.automaticallyImplyLeading = true,
  this.title,
  this.actions,
  this.flexibleSpace,
  this.bottom,
  this.elevation,
  this.shape,
  this.backgroundColor,
  this.brightness,
  this.iconTheme,
  this.actionsIconTheme,
  this.textTheme,
  this.primary = true,
  this.centerTitle,
  this.titleSpacing = NavigationToolbar.kMiddleSpacing,
  this.toolbarOpacity = 1.0,
  this.bottomOpacity = 1.0,
}) : assert(automaticallyImplyLeading != null),
     assert(elevation == null || elevation >= 0.0),
     assert(primary != null),
     assert(titleSpacing != null),
     assert(toolbarOpacity != null),
     assert(bottomOpacity != null),
     preferredSize = Size.fromHeight(kToolbarHeight + (bottom?.preferredSize?.height ?? 0.0)),
     super(key: key);