微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Flutter路由

initialRoute:'/',  //初始化加载的路由

debugShowCheckedModeBanner: false, //去掉debug图片

 

先引入需要跳转页面

 

在Scaffold里 floatingActionButton  浮动按钮

Navigator.pop返回上一级

命名路由

在main.dart里MaterialApp配置routes (''/方法:(context)=>哪个页面),

Navigator.pushNamed(context,'/router 名字');

命名路由传值:

 

       onGenerateRoute: (RouteSettings settings) {
          final String name = settings.name;
          final Function pageContentBuilder = this.routes[name];
          if (pageContentBuilder != null) {
            if (settings.arguments != null) {
              final Route route = MaterialPageRoute(
                  builder: (context) => pageContentBuilder(context,
                      arguments: settings.arguments));
              return route;
            } else {
              final Route route = MaterialPageRoute(
                  builder: (context) => pageContentBuilder(context));
              return route;
            }
          }
        }

有状态组件接收值

路由替换,返回根路由

返回根路由

AppBar

自定义导航

TabBar

属性

TabController

import 'package:Flutter/material.dart';

class TabBarCon extends StatefulWidget {
  TabBarCon({Key key}) : super(key: key);

  @override
  _TabBarConState createState() => _TabBarConState();
}

class _TabBarConState extends State<TabBarCon>
    with SingleTickerProviderStateMixin {
  TabController _tabController;
  @override
  void initState() {
    super.initState();
    _tabController = new TabController(length: 2, vsync: this);
    _tabController.addListener(() {
      print(_tabController.index);
    });
  }

  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
          title: Text('TabBarControllerpage'),
          bottom: TabBar(
            controller: this._tabController,
            tabs: <Widget>[
              Tab(text: '推荐'),
              Tab(text: '热映'),
            ],
          )),
      body: TabBarView(
        controller: this._tabController,
        children: <Widget>[
          Center(child: Text('1111')),
          Center(child: Text('1111'))
        ],
      ),
    );
  }
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐