flutter - RenderBox 未布置:RenderRepaintBoundary#622c4 relayoutBoundary=up2 NEEDS-PAINT Flutter
问题描述
我是 Flutter 的新手,我正在屏幕上获取和显示数据,我有 2 个来自 api 的 ListView 数据,我正在使用 Future Builder。我不能在一个容器中放置两个 FutureBuilder 我必须使用这个错误发生
RenderBox was not laid out: RenderRepaintBoundary#622c4 relayoutBoundary=up2 NEEDS-PAINT
这是我的代码
Column(
children: <Widget>[
FutureBuilder <List<Users>>(
future: users,
builder: (context, snapshot) {
if (snapshot.hasData) {
print('True');
List<Users> data = snapshot.data!;
return
ListView.builder(
itemCount: 1,
itemBuilder: (BuildContext context, int index) {
var family = data[index].mobile;
var family_id = data[index].family_id;
return Card(
child: Column(
children: <Widget>[
Padding(padding:EdgeInsets.all(10)),
ListTile(
title: Text(family),
subtitle: Text('Id:$family_id'),
),
Padding(padding:EdgeInsets.all(10)),
],
),
);
}
);
} else if (snapshot.hasError) {
return Text("${snapshot.error}");
}else{
return Container(child: Text('Null'),);
}
}
),
FutureBuilder <List<FamilyMembers>>(
future: futureData,
builder: (context, snapshot) {
if (snapshot.hasData) {
List<FamilyMembers> data = snapshot.data!;
return
ListView.builder(
itemCount: data.length,
itemBuilder: (BuildContext context, int index) {
var name = data[index].name;
var age = data[index].age;
return Card(
child: Column(
children: <Widget>[
Padding(padding:EdgeInsets.all(10)),
ListTile(
title: Text(data[index].name),
subtitle: Text('Name:$name \nAge:$age'),
),
Padding(padding:EdgeInsets.all(10)),
],
),
);
}
);
} else if (snapshot.hasError) {
return Text("${snapshot.error}");
}else{
return Container();
}
}
)
]
)
我正在尝试解决此错误,但每次更改都会出现此问题。谢谢
解决方案
列表需要一个高度和一个宽度才能呈现尝试将 FutureBuilder 包装在 Expanded 中,或者用具有您希望列表具有的特定高度和宽度的 Container 包装它。(与两个列表相关)
试试这个,告诉我它是否有效:)
推荐阅读
- sql - SQLSERVER 中区分大小写的唯一标识符问题
- java - 在 Thymleaf 中创建动态 ID
- curl - 如何使用令牌身份验证发出 POST/GET curl 请求?
- php - 自 PHP 7.3 起,`array_unshift()` 只能用一个参数调用。重点是什么?
- javascript - 如何使用 ng-attr-aria-labelledby 设置 aria-labelledby
- javascript - 在博览会上使用打字稿调用异步函数返回承诺对象
- python - XGBoost 不考虑参数
- php - 使用 CURL 从 HTTP 中提取数据
- apache-spark - 如何平衡火花中的执行者数量和执行者核心
- angular - Angular i18n:将翻译字符串转发到自己的组件