我需要使用音量按钮来控制应用程序中的变量参数.我Activity.onKeyDown按下按钮时会收到通知,但媒体音量也会增加.
当我按下音量键时,Android正在执行以下操作:
有没有办法避免增加系统音量和仅为我的应用程序使用音量键?
yan*_*nko 104
您需要捕获所有操作:
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
int action = event.getAction();
int keyCode = event.getKeyCode();
switch (keyCode) {
case KeyEvent.KEYCODE_VOLUME_UP:
if (action == KeyEvent.ACTION_DOWN) {
//TODO
}
return true;
case KeyEvent.KEYCODE_VOLUME_DOWN:
if (action == KeyEvent.ACTION_DOWN) {
//TODO
}
return true;
default:
return super.dispatchKeyEvent(event);
}
}
Run Code Online (Sandbox Code Playgroud)
And*_*rew 12
接下来会更好,因为长按一下KeyEvent.KEYCODE_VOLUME_UP在上一个答案中不起作用.
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
int action = event.getAction();
int keyCode = event.getKeyCode();
switch (keyCode) {
case KeyEvent.KEYCODE_VOLUME_UP:
if (action == KeyEvent.ACTION_DOWN) {
//TODO
}
return true;
case KeyEvent.KEYCODE_VOLUME_DOWN:
if (action == KeyEvent.ACTION_DOWN) {
//TODO
}
return true;
default:
return super.dispatchKeyEvent(event);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
47481 次 |
| 最近记录: |