GestureDetector中Card中的图像

时间:2019-11-22 11:14:58

标签: flutter dart flutter-layout

有人可以告诉我如何从我的“图像”文件夹中给卡片一张图像吗?我已经尝试了所有方法,但是它没有用。另外,我将图像排列为“ image1.png”,“ image2.png”,有什么办法可以将图像作为索引明智地放入卡中吗?任何帮助都非常感激。

我的代码:

import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
  return MaterialApp(
    title: 'Just Another App',
    home: Home(),
    theme: ThemeData(primaryColor: Colors.black),
  );
}
}

class Home extends StatefulWidget {
@override
_HomeState createState() => _HomeState();
}

class _HomeState extends State<Home> {
  @override
  Widget build(BuildContext context) {
    var gridView = GridView.builder(
        itemCount: 20,
        gridDelegate:
            SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 3),
        itemBuilder: (BuildContext context, int index) {
          return GestureDetector(
            child: InkWell(
              child: Card(
                elevation: 10,
                // child: Image.asset('lib/images/image$index.png'),
              ),
              onTap: () {},
            ),
          );
        });

    return Scaffold(
      appBar: AppBar(
        title: Text('Just Another App'),
      ),
      body: gridView,
    );
  }
}

2 个答案:

答案 0 :(得分:0)

您已将这些图片添加到pubspec吗?

flutter:
  uses-material-design: true

  assets:
    - lib/images

答案 1 :(得分:0)

在pubspec.yaml中声明图像资产   资产:     -lib / images

创建一个包含图片的列表 列出图片= ['image0.png','image1.png','image2.png','image.png'];

然后迭代您的图像列表

子:Image.asset(lib/images/${images[index]}),