5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【Flutter】GridViewでassetから画像を表示する(Image.asset)

Last updated at Posted at 2020-02-06

開発環境
⭐️Flutter
(flutter_macos_v1.9.1+hotfix.5-stable)

⭐️Android Studio 3.5.1

GridViewでassetから画像を表示する方法

↓↓実際に動かした動画
https://twitter.com/nonnonkapibara/status/1225433572409929729

1.imagesフォルダを作って画像を入れる
スクリーンショット 2020-02-06 21.36.34.png

2.imagesフォルダをAndroid Studioの中に入れる
スクリーンショット 2020-02-06 21.37.50.png

3.imagesフォルダを移動しますか?のダイアログが表示されるので、OKボタンを選択する
スクリーンショット 2020-02-06 21.38.35.png

4.imagesフォルダが入った。
スクリーンショット 2020-02-06 21.39.35.png

5.「pubspec.yaml」を開く
スクリーンショット 2020-02-06 21.42.23.png

6.images配下の全ての画像を取り込む
スクリーンショット 2020-02-06 22.55.34.png

  assets:
    - images/

※画像を個別に取り込む場合は、フルパスを指定する。

スクリーンショット 2020-02-06 23.44.50.png

  assets:
    - images/bell.png
    - images/calculator.png

こんな感じで2つ指定すると、2つだけ取り込む
スクリーンショット 2020-02-06 23.43.20.png

7.「main.dart」にGridViewを実装する

main.dart
import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    var imageList =[
      _imageItem("bell"),
      _imageItem("calculator"),
      _imageItem("castle"),
      _imageItem("cat"),
      _imageItem("coffee"),
      _imageItem("data"),
      _imageItem("deer"),
      _imageItem("duck"),
      _imageItem("football"),
      _imageItem("fox"),
      _imageItem("goldfish"),
      _imageItem("home"),
      _imageItem("horse"),
      _imageItem("island"),
      _imageItem("ladybug"),
      _imageItem("meat"),
      _imageItem("mono"),
      _imageItem("mountain"),
      _imageItem("notebook"),
      _imageItem("panda"),
      _imageItem("penguin"),
      _imageItem("pig"),
      _imageItem("popcorn"),
      _imageItem("post"),
      _imageItem("santa"),
      _imageItem("space_shuttle"),
      _imageItem("tako"),
      _imageItem("trash_can"),
      _imageItem("tree"),
      _imageItem("ufo"),
    ];
    return MaterialApp(
        debugShowCheckedModeBanner: false,
        home: Scaffold(
            appBar: AppBar(
              title: Text('non GridView Sample'),
            ),
            body: GridView.count(
                crossAxisCount: 3,
                children: imageList
            )
        )
    );
  }

  Widget _imageItem(String name) {
    var image = "images/" + name + ".png";
    return Container(
      child: Image.asset(image, fit: BoxFit.cover,),
    );
  }
}

完成
gridView.gif

5
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?