Flutter实现底部导航

发布时间:2019-08-08 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Flutter实现底部导航脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

本文实例为大家分享了Flutter实现底部导航的具体代码,供大家参考,具体内容如下

BottomNavigationBar使用

底部导航栏 主文件 main.dart (注意导入文件路径)

 import 'package:flutter/MATErial.dart'; import './views/FirstPage.dart'; import './views/secondPage.dart'; import './views/thirdPage.dart'; //首先导入三个界面  void main() {  runApp(new MyApp()); }  class MyApp extends statefulWidget {  @override  _MyHomePageState createstate() => new _MyHomePageState(); }  class _MyHomePageState extends State<;myApp> wITh TickerPRoviderStateMixin{   int _tabIndex = 0;   List<BottomNavigationBarItem> _navigationViews;   VAR appBarTitles = ['首页', '发现', '我的'];   PageController pageController;   var _body;   initData() {   _body = new IndexedStack(    children: <Widget>[new FirstPage(), new SecondPage(), new ThirdPage()],    index: _tabIndex,   );  }   @override  void initState() {   suPEr.initState();   _navigationViews = <BottomNavigationBarItem>[    new BottomNavigationBarItem(     icon: const Icon(Icons.home),     title: new Text(appBarTitles[0]),     backgroundColor: Colors.blue,    ),    new BottomNavigationBarItem(     icon: const Icon(Icons.widgets),     title: new Text(appBarTitles[1]),     backgroundColor: Colors.blue,    ),    new BottomNavigationBarItem(     icon: const Icon(Icons.person),     title: new Text(appBarTitles[2]),     backgroundColor: Colors.blue,    ),   ];  }   final navigatorKey = GlobalKey<NavigatorState>();  @override  Widget build(BuildContext context) {    initData();    return new MaterialApp(    navigatorKey: navigatorKey,    theme: new ThemeData(      PrimaryColor: Colors.blue,      accentColor: Colors.blue    ),    home: new Scaffold(     appBar: new AppBar(      title: new Text(       appBarTitles[_tabIndex],       style: new TextStyle(color: Colors.white),      ),     ),     body: _body,     bottomNavigationBar: new BottomNavigationBar(      items: _navigationViews        .map((BottomNavigationBarItem navigationView) => navigationView)        .toList(),      currentIndex: _tabIndex,      type: BottomNavigationBarType.fixed,      onTap: (index) {       setState(() {        _tabIndex = index;       });      },     ),    ),   );  } }

底部包含三个导航按钮,分别对应三个界面:

firstPage.dart

 import 'package:flutter/material.dart';  class FirstPage extends StatefulWidget {  @override  State<StatefulWidget> createState() => new FirstPageState();  }  class FirstPageState extends State<FirstPage> {  @override  Widget build(BuildContext context) {   return new Scaffold(    body: new center(     child: new Text('这是第一个界面'),    ),   );  }  }

secondPage.dart

 import 'package:flutter/material.dart';  class SecondPage extends StatefulWidget {  @override  State<StatefulWidget> createState() => SecondPageState();  }  class SecondPageState extends State<SecondPage> {  @override  Widget build(BuildContext context) {   return new Scaffold(    body: new Center(     child: new Text("这是我第二个页面"),    ),   );  } }

thirdPage.dart

 import 'package:flutter/material.dart';  class ThirdPage extends StatefulWidget {  @override  State<StatefulWidget> createState() => ThirdPageState();  }  class ThirdPageState extends State<ThirdPage>{  @override  Widget build(BuildContext context) {   return new Scaffold(    body: new Center(     child: new Text('我是界面三'),    ),   );  } }

运行截图:

Flutter实现底部导航

android教程
脚本网站
android studio

脚本宝典总结

以上是脚本宝典为你收集整理的Flutter实现底部导航全部内容,希望文章能够帮你解决Flutter实现底部导航所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。