+import 'package:flutter/material.dart';
+import 'package:flutter/cupertino.dart';
+import './album_list.dart';
+import './album_art.dart';
+class Detail extends StatefulWidget {
+ _DetailState createState() => new _DetailState();
+class _DetailState extends State<Detail> {
+ bool showLyrics = false;
+ Widget build(BuildContext context) {
+ Album album = widget.album;
+ alignment: Alignment.bottomCenter,
+ width: double.infinity,
+ height: double.infinity,
+ alignment: Alignment.topCenter,
+ padding: EdgeInsets.all(15.0),
+ decoration: BoxDecoration(
+ borderRadius: BorderRadius.circular(10.0),
+ width: double.infinity,
+ height: double.infinity,
+ alignment: Alignment.topCenter,
+ decoration: BoxDecoration(
+ borderRadius: BorderRadius.circular(10.0),
+ borderRadius: BorderRadius.circular(10.0),
+ child: SingleChildScrollView(
+ physics: AlwaysScrollableScrollPhysics(),
+ Navigator.pop(context);
+ child: Icon(Icons.keyboard_arrow_down, color: Colors.grey, size: 40.0,)
+ padding: EdgeInsets.symmetric(vertical: 20.0),
+ alignment: Alignment.center,
+ child: AlbumArt(tag: album.title, image: album.artwork, shadow: false, size: MediaQuery.of(context).size.width - 100,),
+ _makeDetailTrackInfo(album.title, album.artist),
+ SizedBox(height: 60.0,),
+ activeColor: Colors.grey.shade700,
+ inactiveColor: Colors.grey.shade200,
+ onChanged: (double v){},
+ padding: const EdgeInsets.symmetric(horizontal: 15.0),
+ mainAxisAlignment: MainAxisAlignment.spaceBetween,
+ Text('0:39', style: Theme.of(context).textTheme.caption,),
+ Text('-1:58', style: Theme.of(context).textTheme.caption,),
+ _makeDetailTrackInfo(String title, String artist){
+ padding: EdgeInsets.all(20.0),
+ style: Theme.of(context).textTheme.headline.copyWith(fontWeight: FontWeight.w600),),
+ Text('$artist - $title',
+ style: Theme.of(context).textTheme.headline.copyWith(color: Colors.red),
+ mainAxisAlignment: MainAxisAlignment.spaceEvenly,
+ CupertinoButton(child: Icon(Icons.fast_rewind, size: 50.0,), pressedOpacity: 0.8, onPressed: (){},),
+ CupertinoButton(child: Icon(Icons.play_arrow, size: 75.0,), pressedOpacity: 0.8, onPressed: (){}),
+ CupertinoButton(child: Icon(Icons.fast_forward, size: 50.0,), pressedOpacity: 0.8, onPressed: (){}),
+ padding: const EdgeInsets.symmetric(horizontal: 10.0),
+ Icon(Icons.volume_down, size: 18.0, color: Colors.grey,),
+ child: CupertinoSlider(
+ onChanged: (double v){},
+ activeColor: Colors.grey.shade700,
+ Icon(Icons.volume_up, size: 18.0, color: Colors.grey,),
+ padding: EdgeInsets.symmetric(vertical: 15.0),
+ mainAxisAlignment: MainAxisAlignment.spaceBetween,
+ CupertinoButton(child: Icon(Icons.add, color: Colors.red,), pressedOpacity: 0.8, onPressed: (){}),
+ CupertinoButton(child: Icon(Icons.airplay, color: Colors.red,), pressedOpacity: 0.8, onPressed: (){}),
+ CupertinoButton(child: Icon(Icons.more_horiz, color: Colors.red,), pressedOpacity: 0.8, onPressed: (){}),
+ padding: EdgeInsets.symmetric(vertical: 15.0),
+ mainAxisAlignment: MainAxisAlignment.spaceAround,
+ SizedBox(width: 15.0,),
+ child: CupertinoButton(
+ padding: EdgeInsets.all(0.0),
+ mainAxisAlignment: MainAxisAlignment.center,
+ Icon(Icons.shuffle, color: Colors.red,),
+ Text(' Shuffle', style: TextStyle(color: Colors.red),)
+ color: Colors.grey.shade100,
+ SizedBox(width: 15.0,),
+ child: CupertinoButton(
+ padding: EdgeInsets.all(0.0),
+ mainAxisAlignment: MainAxisAlignment.center,
+ Icon(Icons.repeat, color: Colors.white,),
+ Text(' Repeat', style: TextStyle(color: Colors.white,),)
+ SizedBox(width: 15.0,),
+ padding: EdgeInsets.symmetric(vertical: 10.0, horizontal: 15.0),
+ mainAxisAlignment: MainAxisAlignment.spaceBetween,
+ Text('Lyrics', style: TextStyle(
+ fontWeight: FontWeight.bold,
+ child: Text(showLyrics ? 'Hide' : 'Show',
+ showLyrics = !showLyrics;
+ showLyrics ? Divider() : Container(),
+ showLyrics ? Container(
+ alignment: Alignment.topLeft,
+ child: Text('Tu eres la rueda, yo soy el camino\n'+
+ 'pasas encima de mi dando vueltas\n'+
+ 'tu rodaras porque ese es tu destino\n'+
+ 'sin encontrar nadie que te detenga.\n\n'+
+ 'Quise pararte pero ibas sin frenos\n'+
+ 'y tus rodadas me hicieron pedazos\n'+
+ 'porque no quieres los caminos buenos\n'+
+ 'y agarras todo lo que hay en tus pasos.\n\n'+
+ 'Yo que soñaba, con ser en tu vida\n'+
+ 'el terminar de tus vueltas al mundo\n'+
+ 'te vi pasar como nave perdida\n'+
+ 'de aquà pa\'lla sin agarrar tu mundo.\n\n'+
+ 'Ninguna rueda me habÃa lastimado\n'+
+ 'y me pasaron de las más pesadas\n'+
+ 'pero contigo quede destrozado\n'+
+ 'porque no hiciste ninguna parada.',
+ style: TextStyle(fontSize: 18.0),
+ padding: EdgeInsets.symmetric(vertical: 10.0, horizontal: 15.0),
+ color: Colors.grey.shade100,
+ mainAxisAlignment: MainAxisAlignment.spaceBetween,
+ Text('Up Next', style: TextStyle(
+ fontWeight: FontWeight.bold,