在我的应用程序中,我覆盖音量增大
和音量减小
键。问题是,当用户单击这两个键之一时,就会播放声音。我想以某种方式禁用/静音此声音。
这是我的代码 fragment :
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_VOLUME_DOWN: {
// do something when user click volume down key
return true;
}
case KeyEvent.KEYCODE_VOLUME_UP: {
// do something when user click volume up key
return true;
}
}
return super.onKeyDown(keyCode, event);
}
最佳答案
使用onKeyDown或onKeyUp仍然会发出默认的改变音量的声音。请改用dispatchKeyEvent。
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
int keyCode = event.getKeyCode();
switch (keyCode) {
case KeyEvent.KEYCODE_VOLUME_UP:
case KeyEvent.KEYCODE_VOLUME_DOWN:
return true;
default:
return super.dispatchKeyEvent(event);
}
}
关于java - 单击音量键时禁用声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39646746/