如何在浓缩咖啡上按编辑器操作



如何使用浓缩咖啡在 Android 软键上按下编辑器操作键?我试过了:

onView(withId(R.id.test_title)).perform(typeText("Sample Title"), pressKey(KeyEvent.FLAG_EDITOR_ACTION));

但它不起作用..知道吗?

"pressKey" 需要 KEYCODE,而不是 FLAG。所以按键(KeyEvent.FLAG_EDITOR_ACTION)真的没有意义,绝对行不通。

但是有一个用于按下编辑器 (IME) 操作的 ViewAction,请参阅静态方法:ViewActions#pressImeActionButton()

您可以在此处查看 Espresso 1.x 实施的详细信息:

https://developer.android.com/reference/android/support/test/espresso/action/ViewActions.html#pressImeActionButton()

由于这是搜索如何使用Espresso发送密钥的人的顶级谷歌结果,我想提供一个例子:onView(withId(R.id.your_id)).perform(ViewActions.pressKey(KeyEvent.YOUR_KEY));

要在 Espresso 中发送常规按键,请使用如下方式:

onView(isRoot()).perform(pressKey(KeyEvent.KEYCODE_MENU));

例如,这会将硬件菜单按钮事件发送到任何视图,以打开操作栏/工具栏中的溢出菜单。


备注:要快速添加这些方法的导入,请将闪烁的光标放在未解析的方法上,然后执行Android Studio➔帮助➔查找操作➔搜索"show context action""show intention action"➔单击结果选项➔将出现一个弹出窗口➔单击"Import static method ..."您还可以为"显示上下文操作"分配键盘快捷键。更多信息在这里。另一种方法是在"设置"中启用"Add unambiguous imports on the fly"

接受的答案对我来说不清楚,其他人也不起作用。实际工作的解决方案如下

Espresso.onView(ViewMatchers.withId(R.id.search_box))
        .perform(ViewActions.pressImeActionButton())

其中search_box是我的编辑文本的 ID。

最新更新