当前位置: 首页 > article >正文

如何创建折叠式Title

文章目录

  • 1 概念介绍
  • 2 使用方法
  • 3 示例代码

我们在上一章回中介绍了SliverGrid组件相关的内容,本章回中将介绍SliverAppBar组件.闲话休提,让我们一起Talk Flutter吧。

在这里插入图片描述

1 概念介绍

我们在本章回中介绍的SliverAppBar和普通的AppBar类似,它们的不同之处在于SliverAppBar创建的内容可以折叠和展开,因此它主要和SliverList等组件配合
使用,这样就可以创建一个滑动时折叠或者展开的标题,这样可以丰富标题的内容。本章回中将详细介绍SliverAppBar的使用方法。

2 使用方法

和其它组件一样SliverAppBar提供了相关的属性来控制自己,下面是常用的属性,掌握这些属性就可以使用SliverAppBar了。

  • title属性:主要用来显示标题,和普通AppBar中的title一样;
  • backgroundColor属性:主要用来控制appBar的背景颜色;
  • collapsedHeight属性:主要用来控制AppBar关闭时的高度;
  • expandedHeight属性:主要用来控制AppBar展开时的高度;
  • flexibleSpace属性:主要用来存放AppBar展开时的内容;
    上面介绍的这些属性中我重点介绍一下flexibleSpace属性,该属性是Widget类型,因此我们需要使用组件给它赋值,常用FlexibleSpace类型的组件给它赋值,该
    组件属于容器类组件,它本身只负责装饰,而不显示具体的内容,具体的内容在background属性对应的组件中。我们将在后面的小节中通过代码来演示它的用法。

3 示例代码

SliverAppBar(
  title: const Text('Title of SliverAppBar'),
  backgroundColor: Colors.purpleAccent,
  ///关闭和展开时的高度
  collapsedHeight: 60,
  expandedHeight: 300,
  ///下滑屏幕时先显示appBar下面的内容,后显示appBar中的内容,默认值为false表示此情况
  ///设置为true时,下滑屏幕时先显示appBar中的内容,后显示appBar下面的内容;
  floating: true,
  ///向上拖动屏幕,下面的内容向上滚动,appBar逐渐缩小,最后是否显示appBar,默认是56高度的appBar
  ///默认值为false,表示不显示
  pinned: true,

  ///appBar空间扩展后显示的内容
  flexibleSpace: FlexibleSpaceBar(
    ///这个title在appBar的最下方,可以不设定,缩小后它会和SliverAppBar的title重合
    title: const Text('title of FlexibleSpaceBar'),
    background: Container(
      decoration: const BoxDecoration(
        image:DecorationImage(
          opacity: 0.8,
          // colorFilter: ColorFilter.mode(Color.fromARGB(100, 200, 20,30),BlendMode.difference),
          image: AssetImage("images/ex.png"),
          fit: BoxFit.fill,
        ),
      ),
      ///扩展空间中主要显示的内容
      child: const Center(child: Text('child of container')),
    ),
    centerTitle: true,
    ///拉伸和折叠时的样式,效果不是很明显
    collapseMode: CollapseMode.pin,
    stretchModes: const [
      StretchMode.zoomBackground,
      StretchMode.blurBackground,
      StretchMode.fadeTitle,
    ],
  ),
),

上面的示例代码中添加了详细的注释,这样方便大家理解代码。不过依据目前的知识我们还不能演示程序的运行结果,因为还需要其它组件配合才可以运行,大家不用担心,目前只需要熟练掌握如何创建SliverAppBar组件就可以了,我们在后面章回中会使用本章回创建的组件给大家演示程序运行效果。
看官们,与"SliverAppBar组件"相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!


http://www.kler.cn/a/531865.html

相关文章:

  • python算法和数据结构刷题[1]:数组、矩阵、字符串
  • 剑指offer 链表 持续更新中...
  • 星际智慧农业系统(SAS),智慧农业的未来篇章
  • C++ 常用排序算法
  • deep seek R1本地化部署及openAI API调用
  • python学opencv|读取图像(五十二)使用cv.matchTemplate()函数实现最佳图像匹配
  • 探秘Linux IO虚拟化:virtio的奇幻之旅
  • HTTP异步Client源码解析
  • 01:安装和部署
  • Alibaba grpc Dubbo view
  • AMBA总线学习4--AHB-lite总线
  • 读书笔记 | 《最小阻力之路》:用结构思维重塑人生愿景
  • Deepseek-R1 和 OpenAI o1 这样的推理模型普遍存在“思考不足”的问题
  • 41【语言的编码架构】
  • 单机性能调优中的程序优化
  • Kotlin 使用 Springboot 反射执行方法并自动传参
  • golang命令大全8--跨平台构建
  • git 新项目
  • Unity游戏(Assault空对地打击)开发(4) 碰撞体和刚体的添加
  • Hugging Face GGUF 模型可视化
  • 【Redis_1】初识Redis
  • DeepSeek:人工智能领域的革新者与未来展望
  • VoIP中常见术语
  • Denavit-Hartenberg DH MDH坐标系
  • 【人工智能学习笔记 一】 AI分层架构、基本概念分类与产品技术架构
  • LabVIEW双光子成像系统:自主创新,精准成像,赋能科研