我的音乐播放器完全可以播放第一个文件,但是当切换到下一首歌曲时,它显示此错误:
'package:flutter / src / material / slider.dart':失败的断言:第132行pos 15:'value> = min && value <= max':不正确。
我要发送给滑块的值不会为负,甚至不会为null, 我通过这种方式发送值:
Slider(
value: _duration != null
? _duration > defdur
? _position?.inMilliseconds?.toDouble() ?? 0.0
: 0.0
: 0.0,
onChanged: (double value) {
return audioPlayer.seek((value / 1000).roundToDouble());
},
min: 0.0,
max: _duration != null
? _duration > defdur
? _duration.inMilliseconds.toDouble()
: 0.0
: 0.0),
defdur是我这样设置的默认持续时间:
var defdur = Duration(milliseconds: 0);
所以基本上我有两个内联if语句,用于检查value是否为null或不大于1毫秒,返回0 仍然出现问题!
答案 0 :(得分:1)
将max参数加1就行了,因为比如有些音频片段的实时时间是4:00:01,所以这个数字已经大于4:00:00
答案 1 :(得分:0)
试试这个:
return audioPlayer.seek((value / 1000).roundToDouble().round());