我们的移动应用适用于触摸屏Android设备。我需要支持一个没有触摸屏但有DPad键的新设备。我想我可以捕获DPad方向键并在屏幕上模拟光标箭头。
核心Android中内置的鼠标光标功能是否可以通过API调用轻松打开?是否有方法在屏幕上获取/设置光标位置?此外,当用户按下DPad键上的Enter
时,我是否可以通过编程方式模拟触摸屏事件?问候。
答案 0 :(得分:0)
核心Android中内置的鼠标光标功能是否可以通过API调用轻松打开?
仅当用户使用鼠标时,在这种情况下不需要API调用。
是否有方法在屏幕上获取/设置光标位置?
没有
此外,当用户按下DPad键上的Enter键时,我可以通过编程方式模拟触摸屏事件吗?
没有。你也不应该这样做。您的应用会通过onKeyDown()
等方法了解所有按键操作。当你得到KEYCODE_DPAD_CENTER
时,你只需做任何需要的事情;没有必要模拟触摸屏事件,只需要路由到某个onTouchEvent()
方法。
答案 1 :(得分:0)
首先,请阅读“使应用程序更易于访问”: https://developer.android.com/guide/topics/ui/accessibility/apps.html
关键事件(例如D-pad控件)以关键事件的形式进入应用程序
onKeyDown(int keyCode, KeyEvent event)
触摸事件通过
进入应用程序onTouchEvent(MotionEvent event)
Android确实支持游标(鼠标)。它还有用于管理焦点的框架,这是屏幕小部件周围出现的亮点。
在D-pad上按Enter不是触摸屏幕的同义词 - 它们是不同的事件,需要相应地处理。上述参考文档将指出您正确的方向。