我正在使用以下功能(在“活动”中)来检测音量按钮的点击情况:
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN || keyCode == KeyEvent.KEYCODE_VOLUME_UP){
if(mAudioManager != null){
int curVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC);
Intent intent = new Intent();
intent.setAction(VerticalSeekBar.ACTION_VOLUME_CHANGED);
intent.putExtra(VerticalSeekBar.ARGUMENT_VOLUME_VALUE,curVolume);
sendBroadcast(intent);
return true;
}
}
return super.onKeyDown(keyCode, event);
}
问题是我有popupwindow,它在其视图中将音量条表示为“垂直”搜索条。
当显示popupwindow时,直到我放弃了popupwindow,才调用我活动中的onKeyDown。
有什么建议如何解决这个问题?还有另一种检测音量按钮点击的方法吗?非常感谢您的帮助
最佳答案
不确定实际使用该Popup的方式,但是如果使用Dialog,则可以访问onKeyDown();。对话框。
http://developer.android.com/reference/android/app/Dialog.html#onKeyDown%28int,%20android.view.KeyEvent%29
关于android - 弹出窗口可见时未调用onKeyDown,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18760463/