FlutterのウィジェットExpansionTile
の使い方を紹介します。
ExpansionTile
を使えば開閉可能なリスト(アコーディオンメニュー)を実装できます。
目次
ExpansionTileの使い方
ExpansionTile
のtitle
にアコーディオンメニューが閉じている(または開いている)場合に表示しているウィジェットを渡し、children
にアコーディオンメニューで表示したいウィジェットを1つまたは複数追加します。
ExpansionTile
のデフォルトではアコーディオンメニューは閉じています。
ExpansionTile(
title: Text('果実'),
children: [
ListTile(
title: Text('リンゴ'),
onTap: () {},
),
ListTile(
title: Text('バナナ'),
onTap: () {},
),
ListTile(
title: Text('オレンジ'),
onTap: () {},
),
],
)
サンプルコード
import 'package:flutter/material.dart';
void main() => runApp(const MyApp());
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(title: Text('Flutter')),
body: const ExpansionTileExample(),
),
);
}
}
class ExpansionTileExample extends StatefulWidget {
const ExpansionTileExample({super.key});
@override
State<ExpansionTileExample> createState() => _ExpansionTileExampleState();
}
class _ExpansionTileExampleState extends State<ExpansionTileExample> {
@override
Widget build(BuildContext context) {
return ExpansionTile(
title: Text('果実'),
children: [
ListTile(
title: Text('リンゴ'),
onTap: () {},
),
ListTile(
title: Text('バナナ'),
onTap: () {},
),
ListTile(
title: Text('オレンジ'),
onTap: () {},
),
],
);
}
}
以上です。
合わせて読みたい
【Flutter】AnimatedSwitcherの使い方|アニメーションで表示切り替え
Flutterのウィジェット「AnimatedSwitcher」の使い方を紹介します。 「AnimatedSwitcher」を使えばアニメーションで表示されているウィジェットを切り替えできます。 【…