Flutter LayoutBuilder 用来获取父布局的尺寸大小
志在巅峰的攀登者,不会陶醉在沿途的某个脚印之中,在码农的世界里,优美的应用体验,来源于程序员对细节的处理以及自我要求的境界,年轻人也是忙忙碌碌的码农中一员,每天、每周,都会留下一些脚印,就是这些创作的内容,有一种执着,就是不知为什么,如果你迷茫,不妨来瞅瞅码农的轨迹。
本文章的效果如下:
1 核心代码是通过 LayoutBuilder来获取父窗口尺寸
LayoutBuilder(builder: (BuildContext context, BoxConstraints constraints) {double maxWidth = constraints.maxWidth;double minWidth = constraints.minWidth;double maxHeight = constraints.maxHeight;double minHeight = constraints.minHeight;if(maxWidth>400) {return buildRow();}return buildColumn();},)
2 全部代码实现
class LayoutBuilderPage extends StatelessWidget {@overrideWidget build(BuildContext context) {return Scaffold(body: Center(child: LayoutBuilder(builder: (BuildContext context, BoxConstraints constraints) {double maxWidth = constraints.maxWidth;double minWidth = constraints.minWidth;double maxHeight = constraints.maxHeight;double minHeight = constraints.minHeight;if (maxWidth > 400) {return buildRow();}return buildColumn();},),),);}Widget buildRow() {return Row(mainAxisAlignment: MainAxisAlignment.center,children: [ElevatedButton(onPressed: () {}, child: Text("右侧按钮")),SizedBox(width: 60,),ElevatedButton(onPressed: () {}, child: Text("左侧按钮")),],);}Widget buildColumn() {return Column(mainAxisAlignment: MainAxisAlignment.center,children: [ElevatedButton(onPressed: () {}, child: Text("右侧按钮")),SizedBox(height: 60,),ElevatedButton(onPressed: () {}, child: Text("左侧按钮")),],);}
}
如果你迷茫 不妨来此 每日分享 先积累着再说
更多Widget 的应用,小编已总结在书中
- 点击查看
- 点击查看
Flutter LayoutBuilder 用来获取父布局的尺寸大小相关推荐
- android子view获取父布局,Android获取布局父ID(Android get layout parent id)
Android获取布局父ID(Android get layout parent id) 我想知道View和ViewParent有什么区别? 我想获取ImageView父级的Id,但我不能这样做: m ...
- Javascript获取页面、屏幕尺寸大小参数
Javascript获取获取屏幕.浏览器窗口 ,浏览器,网页高度.宽度的大小 网页可见区域宽:document.body.clientWidth 网页可见区域高:document.body.clien ...
- vue 如何获取图片的原图尺寸_js获取图片信息(一)-----获取图片的原始尺寸
如何获取图片的原始尺寸大小? 如下,当给 img 设置一个固定的大小时,要怎样获取图片的原始尺寸呢? #oImg{ width: 100px; height: 100px; } 方法一: HTML5提 ...
- flutter 获取父组件大小并布局容器LayoutBuilder
LayoutBuilder(builder: (context,constraints){context为父级上下文constraints.biggest.height; 获取组件在父组件所能设置的最 ...
- Flutter 图片如何充满父布局
正常我们需要显示一张图片,会用到Image这个控件. 打个比方,我们加载一张本地的图片, 先看一下这个Image.asset的源码: Image.asset(String name, {Key key ...
- android开发 获取父控件的高宽
@Overrideprotected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {super.onMeasure(widt ...
- jquery选择器 之 获取父级元素、同级元素、子元素
一.获取父级元素 1. parent([expr]): 获取指定元素的所有父级元素 <divid="par_div"><aid="href_fir&qu ...
- 获取父页面URL的参数对应值及左对齐字符串
1 /**//// <summary> 2 /// 返回包含中文字符的字符串长度. 3 /// C# 的string.Length中中文字只做1 ...
- android 父控件的背景_android控件拖动,移动、解决父布局重绘时控件回到原点
/** * * @description 设置意见反馈,用以灰度发布 * @author zhongwr * @params * @update 2016年1月12日 下午5:36:07 */ pri ...
最新文章
- JavaScript如何获得input元素value值
- 根据二叉树前序遍历和中序遍历重建二叉树
- rabbitmq在web管理界面登录失败login fail
- kotlin学习笔记——重载操作符
- 8、oracle数据库下的索引
- flask内置session原理
- 吴恩达深度学习2.1练习_Improving Deep Neural Networks_Regularization
- [转载] python的numpy.random详细解析
- CentOS部署×××
- 第二周函数-的基本格式:
- nodejs导出excel
- 国密 GmSSL 版本及安装
- 从Delphi应用程序创建发票,可视化报告生成器FastReport VCL轻松搞定
- 3.14 将网页的数据导入Excel中 [原创Excel教程]
- UC3842好坏的判断方法
- 互联网进入网盘新时代
- 如何区分固态硬盘和机械硬盘
- 硬盘分区工具找不到硬盘该怎么办
- JAVA和C#调用CSB服务示例
- linus 用的linux版本,Linus Torvalds的重大消息
热门文章
- CV Code | 本周新出计算机视觉开源代码汇总(语义分割、目标检测、超分辨率、网络结构设计、训练策略等)...
- 谷歌发布AdaNet,快速灵活的AutoML工具,帮助开发者构筑强大集成学习模型
- 世界第一编程语言是Python「为什么那么火?」
- 6个部件组成一个圆球_2016年新课标人教版小学六年级数学上册单元练习题集
- CVPR最佳作者新作!无监督学习可变形3D对象
- 北大师兄告诉你,怎样顺利完成自己的博士生涯
- axios php文件登录,JWT实战:使用axios+PHP实现登录认证
- python 开发框架_python的web开发框架有哪些
- linux sftp目录无法切换,linux – SFTP用户无法编辑或创建文件
- MYSQL 批量Insert ID顺序生成(仿雪花算法)