建筑资料网站大全,网站制作导航栏怎么做,大濮网,公共服务标准化建设Flutter系列#xff08;四#xff09;底部导航顶部导航图文列表完整代码#xff0c;如下#xff1a; Flutter系列#xff08;四#xff09;底部导航顶部导航图文列表完整代码_摸金青年v的博客-CSDN博客 目录
一、前言
二、Scaffold组件
三、BottomNavigationBar组件
… Flutter系列四底部导航顶部导航图文列表完整代码如下 Flutter系列四底部导航顶部导航图文列表完整代码_摸金青年v的博客-CSDN博客 目录
一、前言
二、Scaffold组件
三、BottomNavigationBar组件
四、底部导航的具体实现步骤
步骤1. 构建底部导航组件设置样式
步骤2. 设置底部导航图标和文字
步骤3. 导航页内容
步骤4. 使用底部导航
五、完整代码和工程结构 一、前言 本文主要介绍底部导航 BottomNavigationBar 的实现和Scaffold组件一些常用的属性
二、Scaffold组件 在程序中查看组件属性可以点击组件Scaffold查看源码常用属性的中文释义如下表
属性释义类型appBar顶部导航PreferredSizeWidgetbody底部导航的页面内容Widget组件bottomNavigationBar底部导航BottomNavigationBardrawer左侧抽屉菜单WidgetbackgroundColor背景色Color实现底部导航需要用到 bottomNavigationBar 和 body 两个属性
三、BottomNavigationBar组件 BottomNavigationBar是flutter官方提供的组件常用属性的中文释义如下表
属性释义类型items图文列表项ListBottomNavigationBarItemcurrentIndex当前页索引intonTap点击切换页面ValueChangedintfixedColor图标选中时颜色Colortype图文样式类型BottomNavigationBarTypeiconSize图标尺寸doubleselectedFontSize选中时文字尺寸doubleunselectedFontSize未选中时文字尺寸doubleBottomNavigationBarItem 是flutter官方提供的组件常用属性的中文释义如下表
属性释义类型icon图标Iconlabel文字StringIcon 是flutter官方提供的组件提供了很多常用的图标图标对应的名称有官方文档而且支持检索非常方便链接如下Flutter Icon 图标网 四、底部导航的具体实现步骤
步骤1. 构建底部导航组件设置样式
int _bottomNavigationIndex 0; //底部导航页的索引从第一页开始比如首页//底部导航-样式BottomNavigationBar _bottomNavigationBar(){return BottomNavigationBar(items: items(), //底部导航-图文列表currentIndex: _currentIndex, //底部导航页的当前索引onTap: (flag) {setState(() {_currentIndex flag; //点击响应切换到选中图标});}, //onTap 点击切换页面fixedColor: Colors.blue, //图标选中时的颜色蓝色type: BottomNavigationBarType.fixed, //设置fixed当图标数超过3个时不会改变样式iconSize: 20, //图标大小selectedFontSize: 12.0, //选中时字体大小unselectedFontSize: 12.0, //未选中时字体大小);}
步骤2. 设置底部导航图标和文字 底部导航的图标和文字内容相对固定不经常变更避免代码嵌套太多可以移出来封装到一个dart文件里使代码简洁易读这里封装到自定义的 bottomNavigationBar.dart 文件
//底部导航-图标和文字定义
ListBottomNavigationBarItem items(){return [const BottomNavigationBarItem(icon: Icon(Icons.home),label: 首页,),const BottomNavigationBarItem(icon: Icon(Icons.find_in_page),label: 发现,),const BottomNavigationBarItem(icon: Icon(Icons.shop),label: 商城,),const BottomNavigationBarItem(icon: Icon(Icons.local_activity),label: 我的,),];
}步骤3. 导航页内容 导航页的内容是app展示信息的核心布局更为丰富先封装成函数具体布局后续再扩展
//底部导航页-切换页面
final pages [IndexPage(), //首页FindPage(), //发现页ShopPage(), //商城页HomePage() //个人主页
];步骤4. 使用底部导航
overrideWidget build(BuildContext context) {return Scaffold(body: pages[_bottomNavigationIndex], //页面切换bottomNavigationBar: _bottomNavigationBar() //底部导航);}五、完整代码和工程结构
Flutter系列四底部导航顶部导航图文列表完整代码_摸金青年v的博客-CSDN博客 END...