我SeekBar
用于设置音量。我执行以下操作:
- 我通过 获取当前音量
getStreamVolume()
并将其传递给SeekBar
元素setProgress()
。 - 我通过 收听来自
SeekBar
元素的消息onStopTrackingTouch()
并设置音量setStreamVolume()
。有用。
但用户可以通过硬件音量控制来改变音量。我想抓住它并SeekBar
适当地改变指针位置。我该怎么做?
我SeekBar
用于设置音量。我执行以下操作:
getStreamVolume()
并将其传递给SeekBar
元素setProgress()
。SeekBar
元素的消息onStopTrackingTouch()
并设置音量setStreamVolume()
。有用。但用户可以通过硬件音量控制来改变音量。我想抓住它并SeekBar
适当地改变指针位置。我该怎么做?
尝试以下
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN || keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
//set your SeekBar
return true;
}
return super.onKeyDown(keyCode, event);
}
biegleux 指出的问题/答案仅适用于连接耳机上的“媒体键”,而不适用于手机本身的硬件音量增大/减小键。