当前位置 : 主页 > 手机开发 > android >

Android的媒体音量控制器(无论它叫什么)的自定义主题?

来源:互联网 收集:自由互联 发布时间:2021-06-11
我正在尝试自定义媒体音量控制器的主题(我不知道它叫什么,只是试着命名它).它就像一个带有“Media Volume”标题的Toast,当我们按下游戏中的音量按钮(和 – )时会出现.但我不知道它是哪
我正在尝试自定义媒体音量控制器的主题(我不知道它叫什么,只是试着命名它).它就像一个带有“Media Volume”标题的Toast,当我们按下游戏中的音量按钮(和 – )时会出现.但我不知道它是哪个View,或者它是Toast,一个Dialog.就我而言,我找不到任何引用它的东西.只有Activity.setVolumeControlStream(AudioManager.STREAM_MUSIC)
在您的活动中启用它,而不再是> _<
如果有人知道如何定制它,或只是它的名字,请帮助我!
谢谢. 很抱歉我误解了你的问题.

我认为您可以自定义“媒体音量控制器”的方式是自己控制音量并显示自定义视图(或Toast).因为“Media Volume”Toast(它是Toast,参见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);
}
网友评论