【发布时间】:2021-04-15 01:24:49
【问题描述】:
我正在尝试比较两个列表以显示图像,具体取决于其结果。
基本思想是显示图片列表(降低不透明度),当一个元素同时包含在两个列表中时,显示图片不透明度。
在两个列表中使用print() 时,我得到以下结果:
s: [Aquatic, Desert, Grassland, Temperate, Tigra, Tropical, Tundra]
biomes: [Grassland, Tropical]
所以想法是,只有草地和热带(在这个例子中)得到充分展示,而其他保持半透明。
不幸的是,所有图片都是半透明的,我不太确定我错过了什么。
Widget BiomeElement(List<String> s, biomes) {
List<Widget> list = new List<Widget>();
for (var i = 0; i < s.length; i++) {
list.add(
Padding(
padding: const EdgeInsets.all(4.0),
child: new Opacity(
opacity: (s.contains(biomes) ? 1 : 0.3),
child: Column(
children: [
Image.asset(
'assets/biomes/biome_' + s[i].toLowerCase() + '.png',
height: 35,
width: 35),
],
),
),
),
);
}
return new Row(
// mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: list
);
}
【问题讨论】:
-
使用上面提供的代码得到什么结果?
-
所有生物群系都被列出,但匹配不起作用。它们保持半透明
标签: flutter