关于 Flutter中的TextFiled不可以直接在Row中使用的问题

简介: TextFiled不可以直接在Row中使用的问题,报错简单修改方法

1.直接在Row中使用TextField或者TextFormField会报错

======== Exception caught by rendering library =====================================================
The following assertion was thrown during paint():
RenderBox was not laid out: RenderRepaintBoundary#72e67 NEEDS-LAYOUT NEEDS-PAINT
'package:flutter/src/rendering/box.dart':
Failed assertion: line 1982 pos 12: 'hasSize'


Either the assertion indicates an error in the framework itself, or we should provide substantially more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:

解决办法

// 使用Expanded来包裹

 Row(children: <Widget>[new  Expanded(child: TextField())],)

问题出在每次刷新TextField时都重新创建TextEditingController(),所以只需让TextEditingController()创建一次即可解决。

相关文章
|
Java Android开发 iOS开发
Flutter(六)——多子元素组件:ListView,Scaffold,AppBar,Row,Column
Flutter(六)——多子元素组件:ListView,Scaffold,AppBar,Row,Column
259 1
Flutter(六)——多子元素组件:ListView,Scaffold,AppBar,Row,Column
|
Android开发
Flutter基础widgets教程-Row篇
Flutter基础widgets教程-Row篇
189 0
|
Android开发
flutter之Row
flutter之Row
82 0
|
容器
【Flutter】Flutter 布局组件 ( 布局组件简介 | Row 组件 | Column 组件 | SizedBox 组件 | ClipOval 组件 )(一)
【Flutter】Flutter 布局组件 ( 布局组件简介 | Row 组件 | Column 组件 | SizedBox 组件 | ClipOval 组件 )(一)
93 0
|
Dart 开发者
【Flutter】Flutter 布局组件 ( 布局组件简介 | Row 组件 | Column 组件 | SizedBox 组件 | ClipOval 组件 )(二)
【Flutter】Flutter 布局组件 ( 布局组件简介 | Row 组件 | Column 组件 | SizedBox 组件 | ClipOval 组件 )(二)
148 0
【Flutter】Flutter 布局组件 ( 布局组件简介 | Row 组件 | Column 组件 | SizedBox 组件 | ClipOval 组件 )(二)
Flutter中Row中的子控件左右两端对齐
Flutter中Row中的子控件左右两端对齐
281 0
flutter开发教程之Row使用
Row是一个用于水平展示多个子控件的控件。row这个控件不会滚动。
191 0
|
5天前
|
缓存 监控 前端开发
【Flutter 前端技术开发专栏】Flutter 应用的启动优化策略
【4月更文挑战第30天】本文探讨了Flutter应用启动优化策略,包括理解启动过程、资源加载优化、减少初始化工作、界面布局简化、异步初始化、预加载关键数据、性能监控分析以及案例和未来优化方向。通过这些方法,可以缩短启动时间,提升用户体验。使用Flutter DevTools等工具可助于识别和解决性能瓶颈,实现持续优化。
【Flutter 前端技术开发专栏】Flutter 应用的启动优化策略