use*_*875 8 if-statement flutter dart-2
我刚刚更新到 Dart2 和 Flutter sdk: '>=2.12.0 <3.0.0' 现在这个 if 语句中断了:
decoration: new BoxDecoration(
shape: BoxShape.circle,
color: Colors.blueAccent,
border: Border.all(
color: Colors.blueAccent,
width: 20.0,
style: BorderStyle.solid),
image: new DecorationImage(
fit: BoxFit.cover,
image: myMarkerThumb != 'noImage'
? NetworkImage(myMarkerThumb)
: AssetImage('assets/images/noImageAvailable.png'),
),
),
Run Code Online (Sandbox Code Playgroud)
不能将参数类型“Object”分配给参数类型“ImageProvider”。),
我只是从颤振开始,不知道去哪里找别的。
cro*_*x5f 19
嘿,这是目前我在使用 dart 2.12 的 flutter repo 中打开的一个问题。
您可以在此期间制作的一个简单解决方法就是投射对象。
decoration: BoxDecoration(
shape: BoxShape.circle,
color: Colors.blueAccent,
border: Border.all(
color: Colors.blueAccent,
width: 20.0,
style: BorderStyle.solid),
image: DecorationImage(
fit: BoxFit.cover,
image: myMarkerThumb != 'noImage'
? NetworkImage(myMarkerThumb)
: AssetImage('assets/images/noImageAvailable.png') as ImageProvider,
),
),
Run Code Online (Sandbox Code Playgroud)
小智 19
对于那些使用 Image.file 而不是 NetworkImage 的人,解决方案应该如下所示
image: (imageFile != null) ? FileImage(imageFile!) as ImageProvider : AssetImage("assets/xxx.png")
Run Code Online (Sandbox Code Playgroud)
一些在 open issue 中解决了投射到图像提供程序的问题
@AbdurrahmanElrayes
这个解决方案也适用于我
image: DecorationImage(
image: true ? NetworkImage('someNetWorkLocation.com') : AssetImage('assets/images/noImageAvailable.png') as ImageProvider
),
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4107 次 |
| 最近记录: |