news 2026/4/18 7:54:23

Flutter---Scrollable

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Flutter---Scrollable

概念

Scrollable是Flutter中处理滚动的抽象类

abstract class Scrollable extends StatefulWidget { final AxisDirection axisDirection; final ScrollController? controller; final ScrollPhysics? physics; final ViewportBuilder viewportBuilder; }

层次结构

Scrollable ├── Viewport │ ├── SliverList │ ├── SliverGrid │ └── SliverToBoxAdapter └── Scrollbar (可选)

基本使用

Scrollable( axisDirection: AxisDirection.down, //滚动方向 controller: ScrollController(), //控制滚动位置和行为 physics: BouncingScrollPhysics(), //定义滚动物理效果,iOS风格,滚动到边界时有回弹效果 viewportBuilder: (context, offset) { //视口构建器 return Viewport( offset: offset, slivers: [/* 你的Sliver列表 */], ); }, )

ScrollPhysics滚动物理效果

// 1. BouncingScrollPhysics - iOS风格弹性效果 physics: BouncingScrollPhysics() // 2. ClampingScrollPhysics - Android风格阻尼效果 physics: ClampingScrollPhysics() // 3. FixedExtentScrollPhysics - 固定高度滚动 physics: FixedExtentScrollPhysics() // 4. PageScrollPhysics - 页面滚动效果 physics: PageScrollPhysics() // 5. NeverScrollableScrollPhysics - 禁止滚动 physics: NeverScrollableScrollPhysics() // 6. AlwaysScrollableScrollPhysics - 始终可滚动 physics: AlwaysScrollableScrollPhysics() // 组合使用 physics: BouncingScrollPhysics(parent: AlwaysScrollableScrollPhysics())

Sliver家族

// 布局类 SliverList SliverGrid SliverFixedExtentList SliverAnimatedList // 装饰类 SliverPadding SliverAppBar SliverPersistentHeader SliverToBoxAdapter // 特殊类 SliverFillRemaining SliverFillViewport SliverOpacity SliverAnimatedOpacity

自定义Scrollbar

Scrollbar( controller: _controller, thumbVisibility: true, // 始终显示 trackVisibility: true, // 显示轨道 thickness: 8.0, // 宽度 radius: Radius.circular(4), // 圆角 interactive: true, // 可交互 notificationPredicate: (notification) { // 过滤通知 return notification.depth == 0; }, child: ListView.builder( controller: _controller, itemCount: 100, itemBuilder: (context, index) => Text('Item $index'), ), )
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 7:49:13

【计算机毕业设计案例】基于Django+大数据的学习资源推送系统基于Django的在线学习资源分享与推荐系统(程序+文档+讲解+定制)

java毕业设计-基于springboot的(源码LW部署文档全bao远程调试代码讲解等) 博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、…

作者头像 李华
网站建设 2026/4/18 7:40:56

‌大模型测试中的“反馈闭环”:用户投诉如何系统性反哺模型?

在生成式AI大规模落地的2026年,软件测试的边界已从“功能验证”扩展至“体验演化”。用户投诉不再是客服工单的终点,而是大模型持续进化的‌核心燃料‌。‌一、闭环核心逻辑:从“被动响应”到“主动进化”‌传统软件测试依赖预设用例与回归验…

作者头像 李华
网站建设 2026/4/17 15:37:15

大数据毕设项目推荐-基于Django+大数据的学习资源推送系统课程视频、电子书籍【附源码+文档,调试定制服务】

java毕业设计-基于springboot的(源码LW部署文档全bao远程调试代码讲解等) 博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、…

作者头像 李华
网站建设 2026/4/17 19:21:01

大数据毕设选题推荐:基于大数据技术的Django框架下的学习资源推送系统的设计与实现基于Django+大数据的学习资源推送系统【附源码、mysql、文档、调试+代码讲解+全bao等】

java毕业设计-基于springboot的(源码LW部署文档全bao远程调试代码讲解等) 博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、…

作者头像 李华
网站建设 2026/4/18 7:34:47

还在手动搞MySQL主从切换?升级后的一键工具让你告别加班!

话不多说,直接执行! [rootmasterdb ~]# chmod x MYSQLSWTOOL.BIN [rootmasterdb ~]# ./MYSQLSWTOOL.BIN1、选择2,批量切换2、选择4,创建模板,开始执行这里看到切换成功了! 3、选择3可以看主从的切换状态可以…

作者头像 李华