从KeyboardView触发没有EditText的键事件

时间:2016-10-03 11:09:30

标签: android testing android-espresso ui-testing android-instrumentation

触发关键事件的标准方式如下:

onView(allOf(withId(R.id.edit_text), isDisplayed())).perform(ViewActions.pressKey(KeyEvent.KEYCODE_0));

如果没有目标视图(edit_text)但有自定义Keyboard只有收听者setOnKeyboardActionListener该怎么办?

1 个答案:

答案 0 :(得分:0)

对我来说,它可以将自定义 android.inputmethodservice.KeyboardView 设置为 withID 方法,并将 pressKey 方法与KeyEvent一起使用。 KEYCODE_NUMPAD_0 而不是KEYCODE_0:

onView(allOf(withId(R.id.keyboardview), isDisplayed()))
    .perform(pressKey(KeyEvent.KEYCODE_NUMPAD_0));