Show duration left in icon (floating audio player)
This commit is contained in:
parent
ee8342350e
commit
ca7157af62
@ -27,6 +27,7 @@ class _AudioPlayerFloatingContainerState extends State<AudioPlayerFloatingContai
|
||||
bool audioplayed = false;
|
||||
int currentpos = 0;
|
||||
int maxduration = 100;
|
||||
Duration? durationAudio;
|
||||
String currentpostlabel = "00:00";
|
||||
|
||||
@override
|
||||
@ -34,11 +35,12 @@ class _AudioPlayerFloatingContainerState extends State<AudioPlayerFloatingContai
|
||||
Future.delayed(Duration.zero, () async {
|
||||
|
||||
audiobytes = widget.audioBytes;
|
||||
/*player.onDurationChanged.listen((Duration d) { //get the duration of audio
|
||||
maxduration = d.inSeconds;
|
||||
setState(() {
|
||||
player.durationStream.listen((Duration? d) { //get the duration of audio
|
||||
maxduration = d!.inSeconds;
|
||||
durationAudio = d;
|
||||
print("YOULOUUU duration");
|
||||
print(d);
|
||||
});
|
||||
});*/
|
||||
|
||||
//player.bufferedPositionStream
|
||||
|
||||
@ -48,9 +50,9 @@ class _AudioPlayerFloatingContainerState extends State<AudioPlayerFloatingContai
|
||||
currentpos = event.inMilliseconds; //get the current position of playing audio
|
||||
|
||||
//generating the duration label
|
||||
int shours = Duration(milliseconds:currentpos).inHours;
|
||||
int sminutes = Duration(milliseconds:currentpos).inMinutes;
|
||||
int sseconds = Duration(milliseconds:currentpos).inSeconds;
|
||||
int shours = Duration(milliseconds:durationAudio!.inMilliseconds - currentpos).inHours;
|
||||
int sminutes = Duration(milliseconds:durationAudio!.inMilliseconds - currentpos).inMinutes;
|
||||
int sseconds = Duration(milliseconds:durationAudio!.inMilliseconds - currentpos).inSeconds;
|
||||
|
||||
int rminutes = sminutes - (shours * 60);
|
||||
int rseconds = sseconds - (sminutes * 60 + shours * 60 * 60);
|
||||
@ -148,7 +150,19 @@ class _AudioPlayerFloatingContainerState extends State<AudioPlayerFloatingContai
|
||||
});
|
||||
}
|
||||
},
|
||||
child: isplaying ? const Icon(Icons.pause) : const Icon(Icons.play_arrow),
|
||||
child: isplaying ? Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
const Icon(Icons.pause),
|
||||
Text(currentpostlabel),
|
||||
],
|
||||
) : audioplayed ? Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
const Icon(Icons.play_arrow),
|
||||
Text(currentpostlabel),
|
||||
],
|
||||
): const Icon(Icons.play_arrow),
|
||||
|
||||
/*Column(
|
||||
children: [
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user