Robotium:如何才能获得视图的ID?或者我如何直接将文本发送到视图?

时间:2013-06-04 17:15:32

标签: java android robotium

我正在尝试将文字发送到我知道ID的视图。似乎enterText()想要一个int,但我只有一个视图。

solo.enterText(solo.getView(R.id.et_firstname_insurance), firstName);

想法?我阅读了API文档,无法弄明白。

4 个答案:

答案 0 :(得分:1)

我在同事的帮助下想出来了。这会将视图转换为EditText对象,该对象可以传递给enterText的一种风格:

public static EditText getEditText(int i) {
    return (EditText) solo.getCurrentActivity().findViewById(i);
}

EditText eFn = RobotiumHelpers.getEditText(R.id.et_firstname_insurance);
solo.enterText(eFn, firstName);

答案 1 :(得分:0)

我很确定这是不允许的。 Robotium正在测试目的,如果你在外部改变活动的整个状态,那么就会失去目的,并且可能有能力造成伤害。现在,如果您正在讨论在可编辑的内容中输入文本而不是int是可编辑的字段编号。查看tutorial

答案 2 :(得分:0)

您可以将此作为 view1 分配给view,然后您可以使用

  

solo.enterText(view1, firstName); 如果这也行不通,请尝试使用solo.clickOnView(view1); 之后solo.enterText(view1, firstName);

答案 3 :(得分:0)

什么对我有用 - assertTrue("btnUseEmailToLogin View is not visible", (solo.getView("idName") ).isShown() == true); 其中idName - 是要检查的所需视图的ID