使用AssetImage的地图

问题描述 投票:0回答:1

我有一个场景,我想根据选择在应用程序上显示的文本来加载图像。

例如,我有一张地图,看起来像这样。

final _activity = const [
    {'Activity': 'Rock Climbing','Image':'assets/images/rockclimbing.jpg'},
    {'Activity': 'Running','Image':'assets/images/running.jpg'},
];

如果我想在文本小部件中显示与活动相关的文本,我可以做如下操作。

Text(
  activity[activityNumber]['Activity'],
),

但是,我也想显示相应的图片,以下是我试过的方法,但不起作用。

decoration: BoxDecoration(
  color: const Color(0xff7c94b6),
  image: const DecorationImage(
    image:AssetImage (activity[activityNumber]['Image']),
    fit: BoxFit.cover,
),

我也试过用引号,大括号等来包装,但我不能让它工作。

flutter dart flutter-layout
1个回答
2
投票

你所做的方式应该是可行的。

Container(
        decoration: BoxDecoration(
          color: const Color(0xff7c94b6),
          image: DecorationImage(
            image: AssetImage(_activity[activityNumber]['Image']),
            fit: BoxFit.cover,
          ),
        ),
      );

你有没有考虑过使用Image. asset? 像这样的。Image.asset(_activity[activityNumber]['Image'])

© www.soinside.com 2019 - 2024. All rights reserved.