0

DTMF ボリューム (例: 0 から 100) を制御するシーク バーを作成したいと考えています。私はたくさん検索しましたが、何も見つかりませんでした。私はこれをやっていますが、うまくいきません..

int seekbarValue=seekBar.getProgress();
AudioManager audioManager=(AudioManager) getSystemService(Context.AUDIO_SERVICE);
audioManager.setStreamVolume(AudioManager.STREAM_DTMF, seekbarValue, 0); 

DTMF ボリュームを制御する解決策を教えてください。

4

2 に答える 2

1

@Anonsageの回答にもう少し情報を追加したかった.

@Anonsage が述べたように、各ストリームの最大音量は異なります。Kitkat 4.4.2 の実装によると、これらは最大値です。

  1. ストリーム.DTMF: 15
  2. ストリーム.ミュージック: 15
  3. ストリーム.ボイスコール: 5
  4. ストリーム着信音: 7

実際に下位レベルに入り、 AOSPコードのAudioService.javaを調べると、同様の UI を表示し、ストリームの実際の値を更新するのに役立つ再スケーリング操作があります。

于 2016-08-19T14:56:09.293 に答える