[flutter] 플러터 Slider와 연동하여 음악 플레이어의 볼륨을 조정하는 방법은?
import 'package:flutter/material.dart';
import 'package:just_audio/just_audio.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: MyAudioPlayer(),
    );
  }
}

class MyAudioPlayer extends StatefulWidget {
  @override
  _MyAudioPlayerState createState() => _MyAudioPlayerState();
}

class _MyAudioPlayerState extends State<MyAudioPlayer> {
  final AudioPlayer _audioPlayer = AudioPlayer();

  @override
  void initState() {
    super.initState();
    _audioPlayer.setUrl('your_audio_file_url.mp3');
    _audioPlayer.setVolume(0.5); // 초기 볼륨 설정
  }

  @override
  void dispose() {
    _audioPlayer.dispose();
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Audio Player'),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            StreamBuilder<Duration?>(
              stream: _audioPlayer.durationStream,
              builder: (context, snapshot) {
                final duration = snapshot.data ?? Duration.zero;
                return Text('${duration.inSeconds} seconds');
              },
            ),
            StreamBuilder<Duration?>(
              stream: _audioPlayer.positionStream,
              builder: (context, snapshot) {
                final position = snapshot.data ?? Duration.zero;
                return Text('${position.inSeconds} seconds');
              },
            ),
            Slider(
              value: _audioPlayer.volume, // 현재 볼륨
              onChanged: (value) {
                setState(() {
                  _audioPlayer.setVolume(value);
                });
              },
              min: 0.0,
              max: 1.0,
              divisions: 10,
            ),
          ],
        ),
      ),
    );
  }
}

이 예제에서는 Just Audio 패키지를 사용하여 AudioPlayer를 생성하고, Slider를 통해 볼륨을 조절합니다. 또한, 상태를 변경할 때마다 setVolume을 사용하여 볼륨을 조정합니다. 코드를 실행하면 음악 플레이어의 볼륨을 조절할 수 있는 간단한 앱을 확인할 수 있습니다.

다음은 사용된 패키지에 대한 참조입니다: Just Audio 패키지