Пользовательская тема для Media Volume Controller (как она называется) Android? - PullRequest
3 голосов
/ 08 октября 2010

Я пытаюсь настроить тему Media Volume Controller (я не знаю, как она называется, просто попробуйте назвать ее).Это что-то вроде тоста с названием «Media Volume», которое появляется, когда мы нажимаем кнопки громкости (+ и -) в играх.Но я не знаю, какой это вид, или это тост, диалог.Насколько я пытаюсь, я не мог найти ничего, что относится к этому.Только Activity.setVolumeControlStream (AudioManager.STREAM_MUSIC) , чтобы включить его в своей деятельности и ничего более> _ <Если кто-то знает, как настроить его или просто его имя, помогите мне!Спасибо. </p>

Ответы [ 2 ]

7 голосов
/ 10 октября 2010

Извините за неправильное понимание вашего вопроса.

Я думаю, что способ, которым вы можете настроить «Media Volume Controller», - это контролировать громкость самостоятельно и показывать свой настраиваемый вид (или Toast). Поскольку тост "Media Volume" (это тост, см. Исходный код 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);
}
0 голосов
/ 08 октября 2010

Вы можете переопределить 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);
}
...