Flutter层叠布局 Stack、Positioned
Flutter中使用Stack和Positioned这两个组件来配合实现绝对定位。Stack允许子组件堆叠,而Positioned用于根据Stack的四个角来确定子组件的位置。
Stack
alignment:
此参数决定如何去对齐没有定位(没有使用Positioned)或部分定位的子组件
textDirection:
和Row、Wrap的textDirection功能一样,都用于确定alignment对齐的参考系
fit:
此参数用于确定没有定位的子组件如何去适应Stack的大小。StackFit.loose表示使用子组件的大小,StackFit.expand表示扩伸到Stack的大小。
overflow:
此属性决定如何显示超出Stack显示空间的子组件;值为Overflow.clip时,超出部分会被剪裁,值为Overflow.visible 时则不会。
Positioned
left、top 、right、 bottom
分别代表离Stack左、上、右、底四边的距离
width和height
用于指定需要定位元素的宽度和高度
**
Positioned的width、height用于配合left、top 、right、 bottom来定位组件
即在水平方向时,你只能指定left、right、width三个属性中的两个,如指定left和width后,right会自动算出(left+width),如果同时指定三个属性则会报错,垂直方向同理
示例
Container(margin: const EdgeInsets.all(20),child: Stack(alignment: Alignment.topLeft,children: <Widget>[Positioned(child: Text("浮生如梦"),left: 100,top: 100,),Container(child: Text("来也匆匆,去也匆匆",style: TextStyle(color: Colors.white,),),color: Colors.lightBlue,),Positioned(child: Text("倚天屠龙记"),right: 0,bottom: 100,),],),width: double.infinity,height: 300,
),
效果
Stack中添加fit: StackFit.expand,
Container(margin: const EdgeInsets.all(20),child: Stack(alignment: Alignment.topLeft,fit: StackFit.expand,//没有定位的组件会占满Stackchildren: <Widget>[Positioned(child: Text("浮生如梦"),left: 100,top: 100,),Container(child: Text("来也匆匆,去也匆匆",style: TextStyle(color: Colors.white,),),color: Colors.lightBlue,),Positioned(child: Text("倚天屠龙记"),right: 0,bottom: 100,),],),width: double.infinity,height: 300,
),
如图,第二个组件Container占满了Stack全部,并盖住了第一个组件,所以第一个组件不可见。
Flutter层叠布局 Stack、Positioned相关推荐
- flutter 层叠布局Stack、Positioned
Flutter中使用Stack和Positioned来实现层叠布局效果 1 Stack Stack({Key? key,this.alignment = AlignmentDirectional.to ...
- Flutter 层叠布局 Stack、Positioned
层叠布局和Web中的绝对定位.Android中的Frame布局是相似的,子组件可以根据距父容器四个角的位置来确定自身的位置.绝对定位允许子组件堆叠起来(按照代码中声明的顺序).Flutter中使用St ...
- 【Flutter组件】层叠布局 Stack、Positioned
层叠布局(Stack)和 Web 中的绝对定位.Android 中的 FrameLayout 布局是相似的,子组件可以根据距父容器四个角的位置来确定自身的位置.层叠布局允许子组件按照代码中声明的顺序堆 ...
- flutter 布局 Stack Positioned的混合操作 两个组件Container重叠 构建背景圆角操作 类似css的relative
flutter 布局 Stack Positioned的混合操作 两个组件Container重叠 构建背景圆角操作 首先看一下需求 需要在这里加一个背景圆角,涉及到两个组件Container的重叠 我 ...
- Flutter组件学习(13)层叠布局Stack、Positioned
介绍 层叠布局和Web中的绝对定位.Android中的Frame布局是相似的,子组件可以根据距父容器四个角的位置来确定自身的位置.绝对定位允许子组件堆叠起来(按照代码中声明的顺序) Stack ali ...
- Flutter之层叠布局Stack、Positioned
Flutter中使用Stack和Positioned这两个组件来配合实现绝对定位.Stack允许子组件堆叠,而Positioned用于根据Stack的四个角来确定子组件的位置. 一.属性列表 Sta ...
- flutter 叠加布局Stack,Positioned超出部分显示
层叠布局,子组件可以根据距父容器四个角的位置来确定自身的位置 Stack允许子组件堆叠,而Positioned用于根据Stack的四个角来确定子组件的位置. Stack Stack({Key key, ...
- 12、 Flutter Widgets 之 Stack,Positioned叠加组件
Stack/Positioned是用来做页面布局定位的组件,需要结合使用 Stack children:一个数组,里面可放多个Widget alignment:Alignment.topCenter/ ...
- Flutter组件--重叠布局/相对布局(Stack,Positioned组件)
1.Flutter Stack组件 Stack表示堆的意思,我们可以用Stack或者Stack结合Align或者Stack结合 Positiond来实现页面的定位布局 属性 说明 alignment ...
最新文章
- 腾讯!阿里!大二男生斩获4家头部科技公司实习offer!凭啥?
- 现场|除了谷歌AI中国中心成立的重磅消息,谷歌开发者大会现场还有这些
- java创建线程代码_Java创建与结束线程代码示例
- Spring注解之@validated的使用
- RHEL系统网络安装(kikstart)
- RUP,XP,敏捷原理
- python环绕文字_如何用css实现文字三面环绕图片?
- 步步高DVD机DV603的U盘模式支持视频格式
- 搭建一个自己的文件上传服务器。
- 操作系统——内存映射文件
- 机器学习文本特征提取
- 如何安装windows NT虚拟机
- hexo+next主题优化之加入网易云音乐、网易云跟帖、炫酷动态背景
- 《Linux内核分析》期末总结
- 检查型异常有哪些java_JAVA系列之检查型异常与非检查型异常的详解
- 腾讯云阿里云4月服务器价格对比
- Python11 镜像
- (转)Let’s make a DQN 系列
- Matlab中 intlinprog函数用法简介
- 【Kafka笔记】4.Kafka API详细解析 Java版本(Producer API,Consumer API,拦截器等)
热门文章
- 极米投影仪遥控器没用了?故障排除方法
- 【人工智能】美国犯罪率数据分析
- uniapp离线本地打包安卓app最新全部流程
- 分类模型——Softmax回归
- NoMap Speeding-Up JavaScript Using Hardware Transactional Memory
- 【2022前端面试】HTML面试题汇总(加紧收藏)
- mysql econnreset_MySQL在node.js服务器上的空闲时间后给出“ read ECONNRESET”错误
- 计算机网络第七版谢希仁著课后习题答案
- 安卓开发之IPC机制详解
- 在python中经常出现无法导入自己写的库文件的问题