3

Media Volume Controllerのテーマをカスタムしようとしています(名前がわからないので、名前を付けてみてください)。これは、ゲームで音量ボタン(+および-)を押すと表示される「メディア音量」タイトルのトーストのようなものです。しかし、それがどのビューなのか、それともトーストなのか、ダイアログなのかはわかりません。私が試した限り、それを参照するものは何も見つかりませんでした。Activity.setVolumeControlStream(AudioManager.STREAM_MUSIC)のみがアクティビティ で有効になり、それ以上は何もありません> _ <誰かがそれをカスタマイズする方法、または名前だけを知っている場合は、私を助けてください!ありがとう。

4

2 に答える 2

7

あなたの質問を誤解してすみません。

「メディアボリュームコントローラー」をカスタマイズする方法は、自分でボリュームを制御し、カスタマイズビュー(またはトースト)を表示することだと思います。「メディアボリューム」トースト(トーストです。VolumePanel.onShowVolumeChangedのソースコードを参照)は、カスタマイズできないAndroidシステムによって作成および表示されるためです。

問題を解決する可能性のあるサンプルコードは次のとおりです。

public boolean onKeyDown(int keyCode, KeyEvent event) {
    AudioManager am = (AudioManager) this.getSystemService(Context.AUDIO_SERVICE);
    if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
        // Or use adjustStreamVolume method.
        am.adjustVolume(AudioManager.ADJUST_RAISE, AudioManager.FLAG_PLAY_SOUND);
        Toast.makeText(this, "Volume up", Toast.LENGTH_SHORT).show();
        return false;
    } else if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) {
        // Or use adjustStreamVolume method.
        am.adjustVolume(AudioManager.ADJUST_LOWER, AudioManager.FLAG_PLAY_SOUND);
        Toast.makeText(this, "Volume down", Toast.LENGTH_SHORT).show();
        return false;
    }
    return super.onKeyDown(keyCode, event);
}
于 2010-10-10T01:30:29.360 に答える
0

onKeyDownゲームアクティビティのを上書きできます。そして、押したばかりのキーに合わせて「トースト」を表示します。onKeyDownアクティビティでキーが押されたときにメソッドが呼び出されます。サンプルコードは次のとおりです。

public boolean onKeyDown(int keyCode, KeyEvent event)  {
    if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
        // show volumn up toast
    } else if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) {
        // show volumn down toast
    }
    return super.onKeyDown(keyCode, event);
}
于 2010-10-08T14:46:22.667 に答える