有什么方法可以将大量资产图像显示为列表视图?

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

我的应用中大约有300余张图像作为素材资源图像。我想在我的应用程序中显示所有这些内容及其简短描述。有什么方法可以将它们显示为列表视图,而不是分别提供其路径?我希望有一种这样的方法,以便我可以使用它们的索引访问每个对象。

ListView.builder(
    itemCount: litems.length,
    itemBuilder: (BuildContext ctxt, int index) {
     return Text(litems[index]);
    }
)

如果不是,也请...建议我显示如此大量资产图像的最佳方法。

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

声明列表变量

List<String> imagesList;

获取图像:

 Future _initImages() async {
    final manifestContent =
        await DefaultAssetBundle.of(context).loadString('AssetManifest.json');

    final Map<String, dynamic> manifestMap = json.decode(manifestContent);


    final imagePaths = manifestMap.keys
        .where((String key) => key.contains('images/')) // mention folder where all images exists
        .toList();

    setState(() {
      imagesList = imagePaths;
    });
  }

来自initState()的呼叫

 @override
  void initState() {
    // TODO: implement initState
    super.initState();
    _initImages();
  }

最后,可以在imagesList中使用ListView

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