Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/225.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 通过移动seekBar的滚轮设置音量_Android_Audio_Seekbar_Android Audiomanager - Fatal编程技术网

Android 通过移动seekBar的滚轮设置音量

Android 通过移动seekBar的滚轮设置音量,android,audio,seekbar,android-audiomanager,Android,Audio,Seekbar,Android Audiomanager,我想通过seekbar的旋转轮子来改变铃声的音量,但我的代码非常简单,有时当进度为0时,手机会设置为振动模式,有时当进度为1时。请帮帮我 我的代码: final AudioManager audioManager = (AudioManager) getSystemService(AUDIO_SERVICE); seekBar1.setProgress(audioManager.getStreamVolume(AudioManager.STREAM_RING));

我想通过seekbar的旋转轮子来改变铃声的音量,但我的代码非常简单,有时当进度为0时,手机会设置为振动模式,有时当进度为1时。请帮帮我

我的代码:

final AudioManager audioManager = (AudioManager) getSystemService(AUDIO_SERVICE);
            seekBar1.setProgress(audioManager.getStreamVolume(AudioManager.STREAM_RING));
            seekBar1.setMax(audioManager.getStreamMaxVolume(AudioManager.STREAM_RING));
            seekBar1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
                @Override
                public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
                    audioManager.setStreamVolume(AudioManager.STREAM_RING, progress, 0);
                    Log.e("Point_1", "P is " + progress);
                }

                @Override
                public void onStartTrackingTouch(SeekBar seekBar) {

                }

                @Override
                public void onStopTrackingTouch(SeekBar seekBar) {

                }
            });

谢谢。

在设置音量之前,您必须先检查和0以及1,当0设置最小值时,就像。1一样,因此在audioManager.setStreamVolume(audioManager.STREAM\u RING,progress,0)上设置if条件@mundroid所以,如果进度为0,则设置最小值,否则如果1,则设置1,依此类推,类似的事情?是的。在0时放入最小值,如.01;在1时放入最大值,如.99;在其余情况下放入进度。