Horizontal viewport was given unbounded height.width.
Horizontal viewport was given unbounded height.
Vertical viewport was given unbounded width.
在写纵向或横向的布局的时候,一不小心就会遇到这个异常,宽度或高度溢出,导致widget不显示。
比如一个简单的例子:
body: Column(children: <Widget>[Text("aaaaaa"),child: new ListView.builder(itemCount: articleDatas.length,itemBuilder: (BuildContext context, int position) {if (position.isOdd) return new Divider();return getRow(position);}),],),
Column中
只有一个Text
和ListView
,但是效果确实ListView不显示,只显示Text。
随便报了一下Horizontal viewport was given unbounded height.
异常。
原因就是flutter不知道ListView的高度而导致无法渲染。
所以
解决办法一:固定高度
直接用Container包裹起来写死高度。
body: Column(children: <Widget>[Text("aaaaaa"),Container(height: 200,child: new ListView.builder(itemCount: articleDatas.length,itemBuilder: (BuildContext context, int position) {if (position.isOdd) return new Divider();return getRow(position);}),)],),
这样虽然可以,但是如果高度需要自适应的话,写死就不行了
解决办法二:shrinkWrap: true
给ListView的shrinkWrap
属性设置为true
shrinkWrap: true在android中有点像wrap_content
的意思。
但是编译之后会发现页面底部会有超长的黄色警告。
所以还是不行
解决办法三:Flexible
Flexible
是flutter中的一个弹性布局,相当于android中的LinearLayout。
Flexible中有一个flex
属性,等于layout_weight,把剩余空间全部占掉。
所以,我们用Flexible把ListView包裹起来即可
Flexible(child: new ListView.builder(...}),)
所以第三种一般才是终极的解决办法,第一种虽然也可以,但是局限性太多。
更多详细内容:https://blog.csdn.net/yuzhiqiang_1993/article/details/89451080
Horizontal viewport was given unbounded height.width.相关推荐
- flutter Vertical viewport was given unbounded height
完美解决flutter Vertical viewport was given unbounded height错误. 今天多层嵌套错误,终于解决(代码在末尾),花了2个小时百度了好久,都没解决(有说 ...
- Expanded, SingleChildScrollView, CustomScrollView, container, height, width
SingleChildScrollView, CustomScrollView, container, init: double.inifinity. then use Expanded to con ...
- opencv 中x,y,height, width,rows,cols 的关系
opencv中图像的x,y 坐标以及 height, width,rows,cols 他们的关系经常混淆. rows 其实就是行,一行一行也就是y 啦.height高度也就是y啦. cols 也就是 ...
- 36.5. height / width
rrdtool graph graph.png --title="Test Graph" --height=400 --width=800 DEF:pkt=datafile.rrd ...
- js中top,left,height,width相关参数的解析和实例
下面的这些参数的解析都是针对于IE浏览器的: 得到屏幕中鼠标的坐标,相对于整个页面: x=event.clientX, y=event.clientY 得到当前窗口的宽度: w=document.bo ...
- java长方体的父类_java的多级继承程序(题目:创建超类cuboid(长方体),其成员有height,width,length和计算机长方体的体积...
满意答案 CMY891 推荐于 2017.12.16 采纳率:53% 等级:11 已帮助:372人 package zhangyw.test; /** * 该类表示立方体,提供了计算体积的方法. ...
- Flutter学习笔记学习资料推荐,手机端开发工具
打开该目录下的flutter.gradle文件修改如下内容: buildscript { repositories { //google() //jcenter() maven { url 'http ...
- Flutter学习笔记学习资料推荐,大学生android开发项目实例
Flutter开发中的一些Tips Flutter开发中的一些Tips(二) Flutter开发中的一些Tips(三) 正确操作Dart中的字符串[译] Flutter三种方式实现页面切换后保持原页面 ...
- Flutter学习笔记学习资料推荐
对Flutter的学习已经有一段时间了,这里做一下总结记录,东西比较多,可能主要是一些学习资料的记录,还有一些杂七杂八的学习笔记. 文章目录 Flutter 初体验 Flutter 环境配置 Flut ...
最新文章
- python django 优势_那么多人选择Python,它的优势,缺点有哪些?
- #在android studio中维护日程管理系统
- java 高手_Java高手是怎样炼成的
- react做h5 例子_使用React写一个网站的心得体会
- linux mysql 安装innodb_在ubuntu Mysql 5.7 安装InnoDB Memcached 插件
- java 关键字是运算符_Java的super关键字与instanceof运算符使用方法
- 线性表java实现之顺序存储源码
- pgsql merge方法
- EOJ 306 树上问题
- R语言与抽样技术学习笔记(Randomize)
- 高手过招的乐趣---测试用例预演
- java程序员修炼教学视频,快来看鸭~
- Vue 大量数据展示卡顿解决方案(长列表优化)
- 安卓开发中的 “Android高手” ,需要具备哪些技术?
- visual Studio Code(VS code)软件中HTML超级好用的一个插件 liveserver,vs code浏览网页
- 关于融云聊天室KV 值的正确使用
- Unity3D使用LitJson.dll解析报错问题
- 转 兵无常势 水无常形 贴
- Cassandra之jdbc-cassandra使用笔记
- 作为SAP顾问都应该知道的ABAP程序调试方法
热门文章
- MySQL修改密码报错:ERROR 1064 (42000): You have an error in your SQL syntax
- Android读写SD卡
- 麦克风阵列语音增强算法——固定波束形成算法
- 信用社pb通用记账_单折活期中pb通用记账-
- base92解码(python3实现base92加解码)
- 今日芯声 | 马斯克称 AI 会超越人类,不相信的人都自作聪明
- 【PyTorch】RuntimeError: CUDA error: CUBLAS_STATUS_INVALID_VALUE when calling cublasSgemm()
- 【英语语法入门】 第16讲 不定量表达法 (2)
- 【GIS】从GBIF获取生物多样性数据
- 带宽测试linux,Linux下测试带宽速度