首页
学习
活动
专区
圈层
工具
发布

Flutter SingleChildScrollView 滚动控件

Flutter中的SingleChildScrollView类似于Android中的ScrollView,它只能接收一个子组件。...需要注意的是,通常SingleChildScrollView只应在期望的内容不会超过屏幕太多时使用,这是因为SingleChildScrollView不支持基于Sliver的延迟实例化模型,所以如果预计视口可能包含超出屏幕尺寸太多的内容时...,那么使用SingleChildScrollView将会非常昂贵(性能差),此时应该使用一些支持Sliver延迟加载的可滚动组件,如ListView。...可滚动组件中有很多都支持基于Sliver的延迟构建模型,如ListView、GridView,但是也有不支持该模型的,如SingleChildScrollView。...4、ScrollController监听滚动 通过ScrollController可以监听SingleChildScrollView滚动。

6K00
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    师于源码 | Flutter 区域视口双向滑动

    textController ,在 tag3 处和 Lines 组件 绑定,也就是说 Lines 是一个竖直滚动的可滑动组件;水平方向上的滑动控制器是 horizontalController,在 tag4 处和 SingleChildScrollView.../ Only listen for vertical scroll notifications (ignore those // from the nested horizontal SingleChildScrollView...也就是说,当面板区域小于fileWidth 之后,也就是宽度约束过小, 水平方向的 SingleChildScrollView 组件就会发挥效力。 下面来介绍一下,源码中如何计算最长文本宽度的。...如下所示,蓝色区域内有一行文字,当窗口宽度缩小到文本溢出时,底部会呈现滑动条支持水平滑动: 这里先总结一下实现区域视口的双向滚动的步骤: 需要两个可滑动的视口: SingleChildScrollView...tag3 和 tag4 处是准备两个可滑动视口,这里简单期间使用 SingleChildScrollView,其他滑动组件都可以。

    1.1K20

    Flutter页面开发全攻略:从基础Widget到跨端精美界面实战

    SizedBox(width: 16), Icon(Icons.mine)], ) ], ) 避坑点:Row/Column默认不滚动,若子组件总宽度/高度超出屏幕,会导致布局溢出,需嵌套SingleChildScrollView...IconButton(onPressed: () {}, icon: const Icon(Icons.person)), ], ), body: SingleChildScrollView...GridView.count( crossAxisCount: 2, // 2列 shrinkWrap: true, // 自适应高度,避免与SingleChildScrollView...关键知识点复用 用SingleChildScrollView解决页面溢出问题; 用GridView.count实现固定列数的网格布局; 用ListTile快速实现列表项,减少代码冗余; 结合命名路由实现页面跳转...五、Flutter页面开发避坑指南、 布局溢出问题:优先用Expanded、Flex等弹性组件分配空间,或嵌套SingleChildScrollView实现滚动; Widget重建频繁:对静态Widget

    30410

    Flutter | 滚动组件,ListView,GridVIew等

    可滚动组件中有很多都支持 Sliver 的延时构建模型,如 ListView,GridView ,但是也有不支持改模型的 SingleChildScrollView 主轴和纵轴 在滚动组件的坐标描述中,...由于可滚动组件的默认方向一般都是沿垂直方向,所以默认情况下主轴就是指垂直方向,水平方向同理 SingleChildScrollView SingleChildScrollView 类似于 Android...中的 ScrollView ,它只能够接受一个子组件,定义如下: SingleChildScrollView({ this.scrollDirection = Axis.vertical, //滚动方向...需要注意的是,通常 SingleChildScrollView 只应用在期望内容不会超过屏幕太多时使用,这是因为 SingleChildScrollView 不支持 Sliver 的延时实例初始化模型...,所以如果预计视口可能包含超出屏幕尺寸太多内容时,那么使用 SingleChildScrollView 将会非常昂贵(性能差),此时应该使用一些支持 Sliver 延时加载的可滚动组件,如 ListView

    10.2K20
    领券