mjo*_*eer 16 usb mouse android bluetooth
好吧,问题很简单 - 如何在android 2/3/4中处理左/右/中间点击,滚轮和(!)悬停移动.
我一直在挖掘这个话题,发现了以下内容
请帮助我了解如何在每个版本的android中以最简单和正确的方式处理蓝牙和USB鼠标.或者说它不可能.
UPD2:看起来只有3.1+的USB Host,而USB Accessory对此任务无用
Mai*_*aik 20
这些是我的发现:
对于Api等级<9:
KeyEvent
with发送KeyEvent.KEYCODE_BACK
.无法区分实际的"后退"按下和二次按钮按下.对于Api等级9+:
MotionEvent.getSource()
.我用这个来检测输入是否来自鼠标.KeyEvent
with 调度KeyEvent.KEYCODE_BACK
.在某些设备上KeyEvent.getSource()
返回InputDevice.SOURCE_MOUSE
,因此在某些情况下辅助按钮检测有效.对于Api等级12+:
OnGenericMotionListener
已被添加.我用这个来检测鼠标移动ACTION_HOVER_MOVE
和轮子的变化ACTION_SCROLL
.对于Api等级14+:
MotionEvent.getButtonState()
.我跟踪此一个当如果伯,仲,叔鼠标按钮被按下以区分MotionEvent.getActionMasked()
是ACTION_MOVE
,ACTION_DOWN
或ACTION_UP
.我没有查看Api Level 15/16或工具类型,因为我能够使用上面描述的内容跟踪所有鼠标事件.如果有人有额外的信息或我错过了15/16 /工具类型会很有趣.
归档时间: |
|
查看次数: |
16300 次 |
最近记录: |