如何在Flutter中使用Slider设置设备音量

时间:2019-03-14 05:15:47

标签: flutter

如标题所述,如何在Flutter中调整设备音量?我想使用滑块调整设备音量,但找不到任何方法。

1 个答案:

答案 0 :(得分:0)

我在这里放了简单的代码。

我在像素3a API 27上进行了测试(根据软件包“尚未实施IOS”)

稍后,我将使用从Volume.getMaxVol获得的值来更改滑块的固定最大值,并使用Volume.getVol来更改滑块的初始值。

import 'package:volume/volume.dart';
...

class _PlayerState extends State<Player> {
    double _sliderValue = 0.0;
    int maxVol, currentVol;

    @override
    void initState() {
        super.initState();
        initPlatformState();
    }

    Future<void> initPlatformState() async {
        await Volume.controlVolume(AudioManager.STREAM_MUSIC); // you can change which volume you want to change.
    }

    updateVolumes() async {
        maxVol = await Volume.getMaxVol;
        currentVol = await Volume.getVol;
        setState(() {});
    }

    setVol(int i) async {
        await Volume.setVol(i);
    }


    @override
    Widget build(BuildContext context) {
        return Slider(
        activeColor: Colors.indigoAccent,
        min: 0.0,
        max: 15.0,
        onChanged: (newRating) async {
            setState(() {
                sliderValue = newRating;
            });
            await setVol(newRating.toInt());
            await updateVolumes();
        },
        value: _sliderValue,
    )
}