世界最大級のオンライン学習サービス「Udemy(ユーデミー)」とは?

【Flutter】ListTileの使い方|リストの選択アイテムを作る

Flutterのウィジェット「ListTile」の使い方を紹介します。

「ListTile」を使えば用意されてあるレイアウト上の任意の位置にウィジェットを配置できます。また「ListView」などリスト表示するウィジェットの選択アイテムを作る際などに使用されます。

目次

ListTileの使い方

「ListTile」の基本は下記コードの通りです。

「leading」で左側、「title」で中央コンテンツ、「trailing」で右側に任意のウィジェットを配置できます。

ListTile(
  leading: Icon(Icons.check_circle),
  title: Text('Hello World'),
  trailing: Icon(Icons.more_vert),
),

影をつける

「ListTile」に影をつけて立体表示するには「Card」または「Material」を使用します。

Card(
  child: ListTile(
    leading: FlutterLogo(),
    title: Text('Hello World'),
    trailing: Icon(Icons.more_vert),
  ),
),

サブコンテンツをつける

「title」の下にサブコンテンツを表示したい場合は「subtitle」を使用します。

Card(
  child: ListTile(
    leading: Icon(Icons.check_circle),
    title: Text('Hello World'),
    subtitle: Text('ここはサブタイトルです'),
    trailing: Icon(Icons.more_vert),
  ),
),

背景色を変更する

背景色を変更するには「tileColor」を使用します。

Card(
  child: ListTile(
    leading: Icon(Icons.check_circle),
    title: Text('Hello World'),
    subtitle: Text('ここはサブタイトルです'),
    trailing: Icon(Icons.more_vert),
    tileColor: Colors.yellow,
  ),
),

密度を高める

dense: true
dense: false

密度を高めるには「dense」を「true」にします。

デフォルト値は「false」です。

Card(
  child: ListTile(
    leading: Icon(Icons.check_circle),
    title: Text('Hello World'),
    subtitle: Text('ここはサブタイトルです'),
    trailing: Icon(Icons.more_vert),
    dense: true,
  ),
),

以上です。

合わせて読みたい

参考サイト

目次