iis服务器助手广告广告
返回顶部
首页 > 资讯 > 移动开发 >flutter实现appbar下选项卡切换
  • 941
分享到

flutter实现appbar下选项卡切换

2024-04-02 19:04:59 941人浏览 泡泡鱼
摘要

本文实例为大家分享了Flutter实现appbar下选项卡切换的具体代码,供大家参考,具体内容如下 TabBar 、Tab、TabBarView 结合实现 这里实现的是appbar

本文实例为大家分享了Flutter实现appbar下选项卡切换的具体代码,供大家参考,具体内容如下

TabBar 、Tab、TabBarView 结合实现

这里实现的是appbar下的选项卡


import 'package:flutter/material.dart';


class TabBarAndTopTab extends StatefulWidget {
  通过构造方法传值
  TabBarAndTopTab();

  //主要是负责创建state
  @override
  _DemoStateWidgetState createState() => _DemoStateWidgetState();
}


class _DemoStateWidgetState extends State<TabBarAndTopTab>
    with SingleTickerProviderStateMixin {
  _DemoStateWidgetState();

  List tabs = ["首页", "发现", "我的", "设置"];

  //用于控制/监听Tab菜单切换
  //TabBar和TabBarView正是通过同一个controller来实现菜单切换和滑动状态同步的。
  TabController tabController;

  @override
  void initState() {
    ///初始化,这个函数在生命周期中只调用一次
    super.initState();
    tabController = TabController(length: tabs.length, vsync: this);
  }

  @override
  void didChangeDependencies() {
    ///在initState之后调 Called when a dependency of this [State] object changes.
    super.didChangeDependencies();
  }

  @override
  Widget build(BuildContext context) {
    return buildTabScaffold();
  }

  //通过“bottom”属性来添加一个导航栏底部tab按钮组,将要实现的效果如下:
  Widget buildTabScaffold() {
    return Scaffold(
      appBar: AppBar(
        title: Text('标题'),
        //设置选项卡
        bottom: buildTabBar(),
        //设置标题居中
        centerTitle: true,
      ),
      //设置选项卡对应的page
      body: buildBodyView(),
    );
  }

  //当整个页面dispose时,记得把控制器也dispose掉,释放内存
  @override
  void dispose() {
    tabController.dispose();
    super.dispose();
  }

  buildBodyView() {
    //构造 TabBarView
    Widget tabBarBodyView = TabBarView(
      controller: tabController,
      //创建Tab页
      children: tabs.map((e) {
        return Container(
          alignment: Alignment.center,
          child: Text(e, textScaleFactor: 1),
        );
      }).toList(),
    );
    return tabBarBodyView;
  }

  buildTabBar() {
    //构造 TabBar
    Widget tabBar = TabBar(
        //tabs 的长度超出屏幕宽度后,TabBar,是否可滚动
        //设置为false tab 将平分宽度,为true tab 将会自适应宽度
        isScrollable: false,
        //设置tab文字得类型
        labelStyle: TextStyle(fontSize: 15, fontWeight: FontWeight.bold),
        //设置tab选中得颜色
        labelColor: Colors.white,
        //设置tab未选中得颜色
        unselectedLabelColor: Colors.white70,
        //设置自定义tab的指示器,CustomUnderlineTabIndicator
        //若不需要自定义,可直接通过
        //indicatorColor 设置指示器颜色
        //indicatorWight 设置指示器厚度
        //indicatorPadding
        //indicatorSize  设置指示器大小计算方式
        ///指示器大小计算方式,TabBarIndicatorSize.label跟文字等宽,TabBarIndicatorSize.tab跟每个tab等宽
        indicatorSize: TabBarIndicatorSize.tab,
        //生成Tab菜单
        controller: tabController,
        //构造Tab集合
        tabs: tabs.map((e) => Tab(text: e)).toList());

    return tabBar;
  }
}

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

--结束END--

本文标题: flutter实现appbar下选项卡切换

本文链接: https://www.lsjlt.com/news/130240.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • flutter实现appbar下选项卡切换
    本文实例为大家分享了flutter实现appbar下选项卡切换的具体代码,供大家参考,具体内容如下 TabBar 、Tab、TabBarView 结合实现 这里实现的是appbar...
    99+
    2024-04-02
  • flutter如何实现appbar下选项卡切换
    这篇文章主要讲解了“flutter如何实现appbar下选项卡切换”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“flutter如何实现appbar下选项卡切换”吧!本文实例为大家分享了flu...
    99+
    2023-06-20
  • vue.js实现选项卡切换
    因为前端课要交一个大作业,刚好工作室的项目需要一个后台管理界面,就自学了一下vue,今天做了一个选项卡切换,最开始的作为菜鸡是用的js做的,太难了T.T,后面学了bootstrap就...
    99+
    2024-04-02
  • Vue实现Tab选项卡切换
    本文实例为大家分享了Vue实现Tab选项卡切换的具体代码,供大家参考,具体内容如下 点击不同的标题显示出相应的图片 代码如下 <!DOCTYPE html> <...
    99+
    2024-04-02
  • vue.js怎么实现选项卡切换
    本篇内容主要讲解“vue.js怎么实现选项卡切换”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vue.js怎么实现选项卡切换”吧!一、实现原理我是用的点击事件进行更改data数据的值,v-if指...
    99+
    2023-06-29
  • jQuery实现选项卡切换图片
    本文实例为大家分享了jQuery实现选项卡切换图片的具体代码,供大家参考,具体内容如下 效果: 弄出来这个效果,你需要找4张大小相同的图片,大小不一样弄出来效果会很难看 代码: &...
    99+
    2024-04-02
  • Vue实现选项卡tab切换制作
    本文实例为大家分享了Vue实现选项卡tab切换制作代码,供大家参考,具体内容如下 1.主要的实现功能如下:(点击进行切换,这里我不做太多的样式处理了,主要看功能) 2.话不多说:主...
    99+
    2024-04-02
  • Css怎么实现tab选项卡切换
    这篇文章主要介绍了Css怎么实现tab选项卡切换,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Css实现tab选项卡切换的方法:利用target的特性,可以实现纯css的ta...
    99+
    2023-06-14
  • 如何实现js选项卡切换效果
    这篇文章主要介绍如何实现js选项卡切换效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!效果如图:具体代码:<!DOCTYPE html> <html&g...
    99+
    2024-04-02
  • Vue.js中tab怎么实现选项卡切换
    这篇文章主要介绍Vue.js中tab怎么实现选项卡切换,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体内容如下<!DOCTYPE html> <html...
    99+
    2024-04-02
  • JS怎么实现选项卡切换效果
    这篇文章主要为大家展示了“JS怎么实现选项卡切换效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JS怎么实现选项卡切换效果”这篇文章吧。相关代码:<!DOCTYPE html&...
    99+
    2023-06-27
  • jquery选项卡切换效果怎么实现
    要实现jQuery选项卡切换效果,可以按照以下步骤进行操作:1. 创建HTML结构,使用`ul`和`li`元素创建选项卡的导航栏,使...
    99+
    2023-08-15
    jquery
  • JS实现多重选项卡切换轮播图
    轮播动画来提升页面的颜值和交互性能,下面我们将一起学习利用html , css和Javascript等前端开发基础知识来制作一个简单的轮播图。 轮播图简介:在一个网站的某一特定模块,...
    99+
    2024-04-02
  • vue选项卡怎么切换
    在Vue.js中,使用选项卡切换可以轻松地在不同的内容之间进行导航。选项卡通常由标头和内容面板组成,用户可以通过选中标头来选择不同的面板。在Vue.js中,我们可以使用v-if指令和isActive属性来实现选项卡切换。下面是一个基本的选项...
    99+
    2023-05-14
  • vue选项卡如何切换
    今天小编给大家分享一下vue选项卡如何切换的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。在Vue.js中,使用选项卡切换可以...
    99+
    2023-07-05
  • CSS3中怎么实现tab选项卡切换功能
    本篇文章给大家分享的是有关CSS3中怎么实现tab选项卡切换功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。CSS3伪类target利用ta...
    99+
    2024-04-02
  • 如何使用CSS3实现选项卡切换功能
    这篇文章主要讲解了“如何使用CSS3实现选项卡切换功能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用CSS3实现选项卡切换功能”吧!:target是...
    99+
    2024-04-02
  • vue如何实现选项卡切换登录方式
    这篇文章主要为大家展示了“vue如何实现选项卡切换登录方式”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue如何实现选项卡切换登录方式”这篇文章吧。最终效果组...
    99+
    2024-04-02
  • Vue中怎么实现替换路由而不切换选项卡
    今天小编给大家分享一下Vue中怎么实现替换路由而不切换选项卡的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。什么是Vue路由系...
    99+
    2023-07-06
  • CSS如何实现简单的选项卡切换效果
    这篇文章将为大家详细讲解有关CSS如何实现简单的选项卡切换效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。   页面布局及样式:   <divclass=&q...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作