Flutter Material Components Widgets之AppBar

Appbar 一个Material Design应用程序操作栏,由工具栏和其他可能的widget(如TabBar和FlexibleSpaceBar)组成。

结构如下图
Flutter Material Components Widgets之AppBar_第1张图片
AppBar构造函数

AppBar({
    Key key,
    this.leading,
    this.automaticallyImplyLeading = true,
    this.title,
    this.actions,
    this.flexibleSpace,
    this.bottom,
    this.elevation = 4.0,
    this.backgroundColor,
    this.brightness,
    this.iconTheme,
    this.textTheme,
    this.primary = true,
    this.centerTitle,
    this.titleSpacing = NavigationToolbar.kMiddleSpacing,
    this.toolbarOpacity = 1.0,
    this.bottomOpacity = 1.0,
  })
  • actions → List < Widget >
    要在标题小部件后显示的Widget
  • automaticImplyLeading → bool
    控制是否应该显示Leading Widget 默认为true
  • backgroundColor → 颜色
    用于应用栏材质的颜色。通常这应该与亮度,iconTheme,textTheme一起设置
  • bottom → PreferredSizeWidget
    此widget显示在应用栏的底部
  • bottomOpacity → double
    应用栏底部的不透明程度
  • brightness → Brightness
    应用栏材质的亮度。通常,这与backgroundColor,iconTheme,textTheme一起设置
  • centerTitle → bool
    标题是否居中
  • elevation → double
    放置此应用栏的z坐标。这可以控制应用栏下方阴影的大小
  • flexibleSpace → Widget
    此Widget堆叠在工具栏和标签栏后面。它的高度与应用栏的整体高度相同
  • iconTheme → IconThemeData
    用于应用栏图标的颜色,不透明度和大小。通常,这与backgroundColor,brightness,textTheme一起设置
  • leading → Widget
    标题之前显示的Widget
  • preferredSize → Size
    高度为kToolbarHeight和底部窗口小部件首选高度之和的大小
  • primary → bool
    此应用栏是否显示在屏幕顶部
  • textTheme → TextTheme
    应用栏中用于文本的排版样式。通常,这与亮度 backgroundColor,iconTheme一起设置
  • title → Widget
    appbar中显示的title widget
  • titleSpacing → double
    横轴上标题内容 周围的间距。即使没有前导内容或操作,也会应用此间距。如果希望 title占用所有可用空间,请将此值设置为0.0
  • toolbarOpacity → double
    应用栏的工具栏部分是多么不透明
import 'package:flutter/material.dart';

void main() {
  runApp(new MaterialApp(
      home: new DefaultTabController(length: 3, child: new Scaffold(
        appBar: AppBar(
          title: Text('My Fancy Dress'),
          leading: new BackButton(),
          actions: [
            new IconButton(
              icon: Icon(Icons.playlist_play),
              tooltip: 'Air it',
              onPressed: () => print("air it"),
            ),
            new IconButton(
              icon: Icon(Icons.playlist_add),
              tooltip: 'Restitch it',
              onPressed: () => print("restitch is"),
            ),
            new IconButton(
              icon: Icon(Icons.playlist_add_check),
              tooltip: 'Repair it',
              onPressed: () => print("repair it"),
            ),
          ],
          bottom: new TabBar(tabs: [
            new Tab(text: "test1",),
            new Tab(text: "test2",),
            new Tab(text: "test3",),
          ],
          ),
        ),
      ),
      )
  ));
}

Flutter Material Components Widgets之AppBar_第2张图片

你可能感兴趣的:(flutter)