flutter listview 滚动到指定位置_flutter入门
flutter的布局方法
Flutter一切皆组件widget。
使用Scaffold是最容易的,它是 Material Components库中的一个widget,它提供了一个默认banner,背景颜色,并且具有添加drawer,snack bar和底部sheet的API。
Row /column垂直和水平放置多个widget
- 行和列都需要一个子widget列表。
- 子widget本身可以是行、列或其他复杂widget。
- 您可以指定行或列如何在垂直或水平方向上对齐其子项
- 您可以拉伸或限制特定的子widget.
- 您可以指定子widget如何使用行或列的可用空间.
Contents
- 对齐 widgets
- 调整 widgets
- 聚集 widgets
- 嵌套行和列
要在Flutter中创建行或列,可以将一个widget列表添加到Row 或Column 中。 同时,每个孩子本身可以是一个Row或一个Column,依此类推。
对齐 widgets
您可以控制行或列如何使用mainAxisAlignment
和crossAxisAlignment
属性来对齐其子项。
调整 widget
也许你想要一个widget占据其兄弟widget两倍的空间。您可以将行或列的子项放置在Expandedwidget中, 以控制沿着主轴方向的widget大小。Expanded widget具有一个flex属性,它是一个整数,用于确定widget的弹性系数,默认弹性系数是1。
聚集 widgets
默认情况下,行或列沿着其主轴会尽可能占用尽可能多的空间,但如果要将孩子紧密聚集在一起,可以将mainAxisSize设置为MainAxisSize.min。
常用布局widgets
以下widget分为两类:widgets library中的标准widget和Material Components library中的专用widget 。 任何应用程序都可以使用widgets library中的widget,但只有Material应用程序可以使用Material Components库。
标准 widgets
- Container添加 padding, margins, borders, background color, 或将其他装饰添加到widget.可让您创建矩形视觉元素。container 可以装饰为一个
BoxDecoration
, 如 background、一个边框、或者一个阴影。Container
也可以具有边距(margins)、填充(padding)和应用于其大小的约束(constraints)。另外,Container
可以使用矩阵在三维空间中对其进行变换。 - GridView将 widgets 排列为可滚动的网格.
- ListView将widget排列为可滚动列表
- Stack将widget重叠在另一个widget之上.
Material Components
- Card将相关内容放到带圆角和投影的盒子中。
- ListTile将最多3行文字,以及可选的行前和和行尾的图标排成一行
- Container 概要 :
- 添加padding, margins, borders
- 改变背景颜色或图片
- 包含单个子widget,但该子widget可以是Row,Column,甚至是widget树的根
- 使用GridView用途:
- 在网格中放置widget
- 检测列内容超过渲染框时自动提供滚动
- 自定义grid,或使用一下提供的grid之一:GridView.count指定列数 GridView.extent指定项的最大像素宽度
- 在显示二维列表时,重要的是单元格占用哪一行和哪一列时, 应该使用Table或 DataTable。
- ListView 摘要:
- 用于组织盒子中列表的特殊Column
- 可以水平或垂直放置
- 检测它的内容超过显示框时提供滚动
- 比Column配置少,但更易于使用并支持滚动
- Stack来组织需要重叠的widget。同absolute
- 用于与另一个widget重叠的widget,
Stack
允许子 widget 堆叠,可以使用Positioned
来定位他们相对于Stack
的上下左右四条边的位置。- 子列表中的第一个widget是base widget; 随后的子widget被覆盖在基础widget的顶部
- Stack的内容不能滚动
- 您可以选择剪切超过渲染框的子项
- Card 是Material Components 库里的widget
- Card有一个子项, 但它可以是支持多个子项的列,行,列表,网格或其他小部件。默认情况下,Card将其大小缩小为0像素。您可以使用SizedBox来限制Card的大小。
- 接受单个子项,但该子项可以是Row,Column或其他包含子级列表的widget
- 显示圆角和阴影
- Card内容不能滚动
- ListTile是Material Components库中的一个专门的行级widget,用于创建包含最多3行文本和可选的行前和行尾图标的行。ListTile在Card或ListView中最常用.是Material Components 库里的widget
flutter listview 滚动到指定位置_flutter入门相关推荐
- flutter listview 滚动到指定位置_Flutter 布局原理及实战
1. Flutter UI架构 Flutter将视图数据抽象成为三个部分,即Widget树.Element树和RenderObject树. Widget树:控件的配置信息,不涉及渲染,更新代价极低. ...
- Flutter ListView滚动到指定条目
找遍全网没有看到listview滚动到指定条目的方法,基本都是通过条目的高度计算达到效果.这样比较麻烦.通过研究发现一种简单的方法,但是不能使用listview组件,需要使用SingleChildSc ...
- vue 点击div 获取位置_vue 点击元素滚动到指定位置
{{item}} {{item}} data() {return{ navgator: ['列表A','列表B','列表C','列表D', ], navgatorIndex:0, listBox: [ ...
- 用startSmoothScroll实现RecyclerView滚动到指定位置并置顶,含有动画。
RecyclerView滚动到指定位置并置顶 RecyclerView本身提供了几个定位的方法,除了手动滑动的scrollTo,smootScrollTo和scrollBy,smoothScrollB ...
- 监听某个区域滚动_监听页面滚动及滚动到指定位置
一.原生js通过window.onscroll监听 window.onscroll = function() { //为了保证兼容性,这里取两个值,哪个有值取哪一个 //scrollTop就是触发滚轮 ...
- ios开发之--令UITableView滚动到指定位置
这个应用场景还是挺多的,代码如下: //获取到需要跳转位置的行数 NSIndexPath *scrollIndexPath = [NSIndexPath indexPathForRow:10 inSe ...
- 【小程序】滚动到指定位置
点击按钮滚动到页面内的指定位置. wxml <view class="btn" catchtap="scrollToElement">去报名< ...
- vue 网页滚动到指定位置显示动画效果
大部分的网页,在滚动到一定位置的时候,当前区块的文案或者图片有一些飞入,淡入淡出,向上划入的动画效果 //向上划入样式 .boxUp {transform: translateY(0%) !impor ...
- RecyclerView滚动到指定位置
滚动到指定位置 recyclerView.scrollToPosition(position); 平滑滚动到指定位置 recyclerView.smoothScrollToPosition(posit ...
最新文章
- 菜鸟学exchange之一:exchange邮件系统的简单安装和部署
- 【攻防世界016】re2-cpp-is-awesome
- 3、使用Statement接口实现增,删,改操作
- BZOJ 2959: 长跑 [lct 双连通分量 并查集]
- 政府项目需要注意的事项
- Python-深拷贝-浅拷贝-时间消耗
- 2021HDU多校6 - 7029 Median(思维)
- hadoop没有datanode_Hadoop运行在Kubernetes平台实践
- php腾讯云+视频上传失败,腾讯云视频上传和播放尝试总结
- 如何查看电脑CPU实时功耗
- elementui组件_elementui 中 loading 组件源码解析(续)
- 算法学习(二)快速排序(上)
- asp.net MVC使用 jsQR 扫描二维码
- 《数字图像处理 第三版》(冈萨雷斯)——第十一章 表示和描述
- matlab 平滑曲线连接_用MATLAB做数据拟合究竟有多直观
- 2022-2027年中国环保领域集团级sis系统行业市场调研及未来发展趋势预测报告
- 潇潇六月雨 input file里的JQ change() 事件的只生效一次
- php iis 上传文件大小限制,IIS上传和下载文件大小限制
- SDRAM的工作原理
- 数据探索简介——质量分析、特征分析