BottomNavigationBar

介绍

底部导航是常见的APP布局方式,实际上我自己常用的app都是底部导航的

##相关属性

BottomNavigationBar

属性 说明
items BottomNavigationBarItem 列表,包含了导航栏中的按钮
currentIndex 当前所高亮的按钮index
type BottomNavigationBarType 中定义的类型,有 fixed 和 shifting 两种类型
fixedColor 如果 type 类型为 fixed,则通过 fixedColor 设置选中 item 的颜色
iconSize BottomNavigationBarItem 中 icon 的大小
### BottomNavigationBarItem
属性 说明
————— ————————
icon 图标 widget,一般为 Icon
title 标题 widget,一般为 Text
backgroundColor item 的背景颜色

示例

import 'package:flutter/material.dart';

class BottomNavigationBarMaterial extends StatefulWidget {
  
  State<StatefulWidget> createState() => _BottomNavigationBar();
}

class _BottomNavigationBar extends State<BottomNavigationBarMaterial> {
  int _selectIndex = 0;

  
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text("BottomNavigationBar"),
        ),
        bottomNavigationBar: BottomNavigationBar(
          items: <BottomNavigationBarItem>[
            BottomNavigationBarItem(
              title: Text(
                '首页',
              ),
              icon: Icon(
                Icons.home,
                color: Colors.black,
              ),
              activeIcon: Icon(
                Icons.home,
                color: Colors.pinkAccent,
              ),
            ),
            BottomNavigationBarItem(
              title: Text(
                '通讯录',
              ),
              icon: Icon(
                Icons.perm_contact_calendar,
                color: Colors.black,
              ),
              activeIcon: Icon(
                Icons.perm_contact_calendar,
                color: Colors.pinkAccent,
              ),
            ),
            BottomNavigationBarItem(
              title: Text(
                '新闻',
              ),
              icon: Icon(
                Icons.fiber_new,
                color: Colors.black,
              ),
              activeIcon: Icon(
                Icons.fiber_new,
                color: Colors.pinkAccent,
              ),
            ),
            BottomNavigationBarItem(
              title: Text(
                '我',
              ),
              icon: Icon(
                Icons.person_pin,
                color: Colors.black,
              ),
              activeIcon: Icon(
                Icons.person_pin,
                color: Colors.pinkAccent,
              ),
            ),
          ],
          // icon大小
          iconSize: 24,
          // 默认选中第几个
          currentIndex: _selectIndex,
          // 选中变化回调
          onTap: (index) {
            setState(() {
              _selectIndex = index;
            });
          },
          // type=BottomNavigationBarType.fixed时选中字体的颜色
          fixedColor: Colors.pinkAccent,
          type: BottomNavigationBarType.fixed,
        ),
      ),
    );
  }
}


 上一篇
PopupMenu PopupMenu
介绍 弹出式菜单 示例import 'package:flutter/material.dart'; class PopupMenuMaterial extends StatefulWidget { @override Stat
2019-02-25
下一篇 
AppBar AppBar
介绍 AppBar 显示在app的顶部。AppBar包含5大部分,如下图: 构造函数AppBar({ Key key, this.leading,//在标题前面显示的一个控件,在首页通常显示应用的 logo;在其他界面通常显示为返
2019-02-25
  目录