当前位置:首页 > 谈天说地

Flutter定义tabbar底部导航路由跳转的方法

34资源网2022-07-29394

本文实例为大家分享了flutter定义tabbar底部导航路由跳转的具体代码,供大家参考,具体内容如下

效果展示

整体实现的目录结构

第一步 把三个页面放到tabs里 category.dart || home.dart || setting.dart

在这里我只展示 home.dart 另外两个页面相同

import 'package:flutter/material.dart';

class homepage extends statefulwidget {
  homepage({key key}) : super(key: key);

  @override
  _homepagestate createstate() => _homepagestate();
}

class _homepagestate extends state<homepage> {
  @override
  widget build(buildcontext context) {
    return text("我是首页组件");
  }
}

在 tabs.dart 里import 引入三个页面

import 'package:flutter/material.dart';
import 'tabs/home.dart';
import 'tabs/category.dart';
import 'tabs/setting.dart';

class tabs extends statefulwidget {
  tabs({key key}) : super(key: key);

  @override
  _tabsstate createstate() => _tabsstate();
}

class _tabsstate extends state<tabs> {
  int _currentindex = 0;
  // 把页面存放到数组里
  list _pagelist = [
    homepage(),
    categorypage(),
    settingpage(),
  ];
  @override
  widget build(buildcontext context) {
    return scaffold(
      appbar: appbar(
        title: text('首页'),
      ),
      body: this._pagelist[this._currentindex],
      bottomnavigationbar: bottomnavigationbar(
        // 默认选中第几项
        currentindex: this._currentindex,
        // 导航栏点击获取索引值
        ontap: (int index) {
          setstate(() {
            this._currentindex = index;
          });
        },
        iconsize: 30.0, //icon的大小
        fixedcolor: colors.red, //选中的颜色
        type: bottomnavigationbartype.fixed, //配置底部tabs可以有多个按钮
        //定义导航栏的图片+名称
        items: [
          bottomnavigationbaritem(icon: icon(icons.home), title: text("首页")),
          bottomnavigationbaritem(
              icon: icon(icons.category), title: text("分类")),
          bottomnavigationbaritem(
              icon: icon(icons.settings), title: text("设置")),
        ],
      ),
    );
  }
}

main.dart

import 'package:flutter/material.dart'; //快捷方式:fim
import 'pages/tabs.dart';

void main() {
  runapp(myapp());
}

//自定义组件
class myapp extends statelesswidget {
  @override
  widget build(buildcontext context) {
    // todo: implement build
    return materialapp(
      home: tabs(),
      theme: themedata(primaryswatch: colors.deeporange),
      debugshowcheckedmodebanner: false,
    );
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持萬仟网。

看完文章,还可以扫描下面的二维码下载快手极速版领4元红包

快手极速版二维码

快手极速版新人见面礼

除了扫码领红包之外,大家还可以在快手极速版做签到,看视频,做任务,参与抽奖,邀请好友赚钱)。

邀请两个好友奖最高196元,如下图所示:

快手极速版邀请好友奖励

扫描二维码推送至手机访问。

版权声明:本文由34楼发布,如需转载请注明出处。

本文链接:https://www.34l.com/post/19987.html

分享给朋友:

相关文章

女人励志语录20句,满满的正能量句子

女人励志语录20句,满满的正能量句子

1、每一个太阳升起,老想带去期待的问候:让每日的气体全是清爽让每日的情绪全是伸展让每日的获得全是丰富!…

天上的孩子电影好看吗?看豆瓣网友如何评价的吧

天上的孩子电影好看吗?看豆瓣网友如何评价的吧

由胡玫监制许磊导演编剧的电影《天上的孩子》。电影主要讲述了来自贵州的夫妻老何、玲霞5岁的独子查出绝症,不久于人世。为了让儿子的名字刻在纪念碑上,夫妻俩决定捐献儿子的器官却困难重重。…

语音导出软件哪个好用(免费的语音打包软件推荐)

语音导出软件哪个好用(免费的语音打包软件推荐)

有些QQ用户想把苹果手机或安卓手机QQ语音消息导出到电脑上,如保存为mp3格式文件,方便在电脑上的任意播放器中进行播放,或者想将某人发给自己的一些语音消息串联合并为一个MP3文件。以前手机QQ语音消息是保存在手机上的,但随着QQ版本的升级,…

火了12年,“假洋鬼子”终于翻车了

火了12年,“假洋鬼子”终于翻车了

图源:摄图网 编者按:本文来自微信公众号格隆汇财经热点(ID:glh_finance),作者:万连山,创业邦经授权转载 你肯定看到过这样一幅广告:一个与乔布斯颇有几分相似的神秘洋老头,戴着金丝眼镜,有时叼着烟斗,有时没有,出现在各大高铁站和…

fortune语言什么意思(fortune程序编程)

fortune语言什么意思(fortune程序编程)

有钱能使鬼推磨,没钱生活也得过,其实有钱不一定过得好,没钱也不一定过得不好。无论什么时候人拥有多少的财富,都是一种物质状态,它不绝对影响着人的所作所为,因此也没有绝对的命好命苦的说法,主要还是看心态。 但是无论是在生活中还是工作中,运气是…

chrome屏蔽广告插件(手机弹窗广告去除拦截方法)

chrome屏蔽广告插件(手机弹窗广告去除拦截方法)

近日,微软的Edge浏览器被网友发现在空白导航页中加入了广告,而且该广告还无法关闭,更有意思的是该广告疑似为中国特供,在将Edge语言选项切换为英语或日语等其它语言后,该广告就会从空白导航页中消失。 加入广告就算了,居然还可能是“中国特供”…