原因
flutter row布局嵌套row布局市容expanded填充水平方向的剩余空间时,外层控件无法计算子控件的实际宽度,导致这个问题
解决方案
使用IntrinsicWidth让外层控件智能计算一个最小宽度,一下使用伪代码解释
IntrinsicWidth(
child: Expanded(
child: Row(
children: [
Expanded(
flex: 1,
child: Text("¥9.9",
style: TextStyle(
fontSize: 14, color: AppTheme.red_1B)),
),
Expanded(
flex: 0,
child: Row(
children: [
GestureDetector(
child: LoadAssetImage(
"mine/refund_money",
height: 28,
width: 28,
),
onTap: () {
//TODO 自行删除
print(
"================ =============================================== :::::::::::: " +
"delete");
},
),
Text("1",
style: TextStyle(
fontSize: 14,
color: AppTheme.black_333)),
GestureDetector(
child: LoadAssetImage(
"mine/refund_money",
height: 28,
width: 28,
),
onTap: () {
//TODO 自行删除
print(
"================ =============================================== :::::::::::: " +
"add ");
},
)
],
),
)
],
),
),
),
当Flutter中的Row布局嵌套Row,并使用Expanded填充水平空间时,可能会遇到RenderFlex错误。原因是外层控件无法确定子控件的实际宽度。解决方法是使用IntrinsicWidth,它能帮助外层控件智能计算最小宽度,从而避免问题发生。
2829

被折叠的 条评论
为什么被折叠?



