mar*_*inj 38
您可以使用检测,即从您的活动的onCreate调用的代码将导致菜单多次打开和关闭:
new Thread(new Runnable() {
@Override
public void run() {
try {
Instrumentation inst = new Instrumentation();
for ( int i = 0; i < 10; ++i ) {
inst.sendKeyDownUpSync(KeyEvent.KEYCODE_MENU);
Thread.sleep(2000);
inst.sendKeyDownUpSync(KeyEvent.KEYCODE_BACK);
Thread.sleep(2000);
}
}
catch(InterruptedException e){
}
}
}).start();
Run Code Online (Sandbox Code Playgroud)
......但我不确定这是不是你所追求的
如果您有一个想要使用该事件的视图,则可以使用BaseInputConnection类及其sendKeyEvent方法.
要使用它,您需要指定将接收KeyEvent的目标视图(例如EditText).例如:
EditText editText;
BaseInputConnection inputConnection = new BaseInputConnection(editText, true);
inputConnection.sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_POUND));
Run Code Online (Sandbox Code Playgroud)
这样的结果就像用户实际按#键(同时编辑文本聚焦).