どうも、ちょげ(@chogetarou)です。
リストビューの背景にグラデーションを設定する方法を紹介します。
方法

リストビューの背景にグラデーションを設定するには、まずリストビューを「Container」の「child」に指定します。
次に、「Container」の引数「decoration」に「BoxDecoration」を指定します。
そして、BoxDecorationの引数「gradient」でグラデーションを設定します。
Container(
decoration: BoxDecoration(
gradient: /*グラデーション*/,
),
child: ListView(
children: [],
),
),
以下は、使用例です。
@override
Widget build(BuildContext context) {
return SafeArea(
child: Scaffold(
body: Padding(
padding: const EdgeInsets.all(8.0),
child: Container(
decoration: BoxDecoration(
gradient: LinearGradient(
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
colors: [Colors.blue, Colors.red],
),
),
child: ListView(
children: [
for (var i = 0; i < 20; i++)
Card(
child: ListTile(
title: Text('$i'),
),
),
],
),
),
),
),
);
}

コメント