flutter - 参数类型“图像?” 无法将参数类型分配给“Widget”,因为“Image?”
问题描述
更新颤振版本后出现此错误,
在更新之前它运行良好。
The argument type 'Image?' can't be assigned to the parameter type 'Widget' because 'Image?' is nullable and 'Widget' isn't.
我怎样才能解决这个问题??
Widget levelBtn = FlatButton(
onPressed: (){
setState((){
level++;
if (level == 2){level = 0;}
});
},
padding: EdgeInsets.all(0.0),
child: ((){
if (level == 0){
return Image.asset("images/LL_BeginnerJa.png",height:constrain.minHeight /414 * 30);
} else if (level == 1){
return Image.asset("images/LL_NormalJa.png",height:constrain.minHeight /414 * 30);
}
})()
);
解决方案
你能试试这个语法并告诉我它是否有效吗?
child: level == 0 ? Image.asset("images/LL_BeginnerJa.png",height:constrain.minHeight /414 * 30) : level == 1 ? Image.asset("images/LL_NormalJa.png",height:constrain.minHeight /414 * 30) : SizedBox(),
整个代码
Widget levelBtn = FlatButton(
onPressed: () {
setState((){
level++;
if (level == 2){level = 0;}
});
},
padding: EdgeInsets.all(0.0),
child: level == 0
? Image.asset("images/LL_BeginnerJa.png",
height: constrain.minHeight / 414 * 30)
: level == 1
? Image.asset("images/LL_NormalJa.png",
height: constrain.minHeight / 414 * 30)
: SizedBox(),
);
推荐阅读
- histogram - 未捕获的 RangeError:使用 Apache Echart 制作直方图时数组长度无效
- ios - SwiftUI - 更改默认选择器项目高度
- mysql - 如何在sequelize中分组并获取相关数据数组
- java - 如何从Java中的函数访问变量?
- r - gsub 提取字符串
- python - 我的程序运行但我没有在控制台上收到反馈
- cuda - 分析一个CUDA矩阵加法代码,使用nvprof:代码API配置文件,内核没有
- python - Python/Pandas/Numpy 问题:如何在保留第四列名称的同时堆叠/合并三列
- perl - 在 Perl 中使用 require
- vb.net - 根据 DataGridView 单元格值更新 ComboBox 选择?