public boolean onKeyDown(int keyCode, KeyEvent event) { switch (keyCode) { case KeyEvent.KEYCODE_VOLUME_UP: mAudioManager.adjustStreamVolume(STREAM_TYPE, AudioManager.ADJUST_RAISE, AudioManager.FLAG_VIBRATE); break; case KeyEvent.KEYCODE_VOLUME_DOWN: mAudioManager.adjustStreamVolume(STREAM_TYPE, AudioManager.ADJUST_LOWER, AudioManager.FLAG_VIBRATE); break; default: break; } return true; }
在通过音量按键调节声音大小时,系统音量的控制的toast会自动弹出来。找了很多方法没有解决。因为这个toast面板是系统的。不能覆盖。但是有一种方法是通过在activity的onKeyDown方法里return true,toast就不会弹出来了。这时候可以自定义自己的toast面板。例如多米播放器就自定义了一个seekbar显示声音大小的面板。
代码就很简单了