From c979904f95c2451fed5bba5d83fe9a7244c39ae3 Mon Sep 17 00:00:00 2001 From: Orangerot Date: Fri, 20 Dec 2024 22:46:19 +0100 Subject: feat: level selection layout --- lib/level_selection.dart | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 lib/level_selection.dart (limited to 'lib/level_selection.dart') diff --git a/lib/level_selection.dart b/lib/level_selection.dart new file mode 100644 index 0000000..c63c8c3 --- /dev/null +++ b/lib/level_selection.dart @@ -0,0 +1,38 @@ +import 'package:flutter/material.dart'; + +class LevelSelection extends StatelessWidget { + final List _musicList = [ + "https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3", + "https://www.soundhelix.com/examples/mp3/SoundHelix-Song-2.mp3", + "https://www.soundhelix.com/examples/mp3/SoundHelix-Song-3.mp3", + ]; + + final List _coverArtList = [ + "https://cdn.pixabay.com/photo/2020/05/19/13/48/cartoon-5190942_960_720.jpg", + "https://cdn.pixabay.com/photo/2020/05/19/13/35/cartoon-5190860_960_720.jpg", + "https://cdn.pixabay.com/photo/2020/10/23/17/52/fox-5679446_960_720.png", + ]; + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: const Text('Sense the Rhythm')), + body: ListView.separated( + itemCount: _musicList.length, + separatorBuilder: (BuildContext context, int index) => const Divider(), + itemBuilder: (context, index) { + return ListTile( + leading: Image.network(_coverArtList[index]), + trailing: Icon(Icons.play_arrow), + title: Text('Track ${index + 1}'), + subtitle: Text('3:45'), + ); + }, + ), + floatingActionButton: FloatingActionButton( + onPressed: () => {}, + child: Icon(Icons.add) + ), + ); + } +} -- cgit v1.2.3