问题很简单。我必须模拟 dpad 事件(UP、DOWN、RIGHT、LEFT、CENTER),以便在由许多按钮和其他元素组成的 GUI 中导航。使用模拟器 D-Pad,我可以在没有行代码的情况下导航抛出这个 GUI。但是我怎样才能以编程方式做到这一点?
我尝试了很多都没有成功:
KeyEvent event = new KeyEvent(KeyEvent.ACTION_DOWN,KeyEvent.KEYCODE_DPAD_LEFT); View.dispatchKeyEvent(event);
什么都没有发生(焦点应该向右移动一个元素)我也阅读了很多关于 windowManager.injectKeyEvent 的内容,但没有发现任何有用的信息。
- 而且 Instrumentation 可以帮助模拟关键事件,但更多的是用于测试,而不是在应用程序本身中使用。
我认为有一个解决方案,因为对讲可以模拟物理方向键(http://code.google.com/p/eyes-free/source/browse/trunk/ime/latinime/src/com/googlecode/eyesfree /inputmethod/latin/LatinIME.java )