0

私はゲームアプリケーションに取り組んでいます。しかし、ボリュームコントロールに問題があります。システム メディアの音量ではなく、seekBar を使用してメディア プレーヤーの音量を変更したい。seekBar を介してメディア プレーヤーの音量を変更する方法はありますか。

前もって感謝します。

4

2 に答える 2

5

まず、AudioManager から参照を取得します。

AudioManager audioMan = (AudioManager) getSystemService(Context.AUDIO_SERVICE);

音量を上げるには:

 audioMan.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_RAISE, AudioManager.FLAG_VIBRATE | AudioManager.FLAG_PLAY_SOUND | AudioManager.FLAG_SHOW_UI);

音量を下げるには:

audioMan.adjustStreamVolume(AudioManager.STREAM_MUSIC, AudioManager.ADJUST_LOWER, AudioManager.FLAG_VIBRATE | AudioManager.FLAG_PLAY_SOUND | AudioManager.FLAG_SHOW_UI);

最大音量を取得するには:

int maxVolume = audioMan.getStreamMaxVolume(AudioManager.STREAM_MUSIC);

現在の音量を取得するには:

int currVolume = audioMan.getStreamVolume(AudioManager.STREAM_MUSIC);

私が含めたフラグはどれでも削除できます

于 2012-06-19T06:52:16.617 に答える
0

これで助かるかも…

protected static void setVolume(int volume) {
        currentVolume = volume;
        {
            if (volume == 1) {
                volume = 2;
            }
            try {
                float vol = ((float) volume / CONSTANT.SYSTEM_MAX_VOLUME);
                mediaPlayer.setVolume(vol, vol);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

    }
于 2013-08-14T21:21:51.693 に答える