0

我正在尝试测试我的应用程序,其中将在文本框中输入一些字符串(例如“xyz”),并会出现一个建议列表(从服务器获取)。在那些我想选择第一个,但我得到 java 语言错误。我的代码是

EditText input = solo.getView(R.id.inputBox);
        solo().clickOnView(input);
        solo().enterText(input, "XYZ");
        solo().sendKey(Solo.ENTER);
        solo().waitForDialogToClose(20000);
        solo().clickInList(0);

如果我给出sleep命令 berofesolo().sendKey(Solo.ENTER)那么我可以在编辑框中输入“ XYZ ”并且触发 ENTER 的时间,测试结束并且可以在故障跟踪器中看到错误(在 Junit eclips 中)。

4

1 回答 1

0

在您的适配器中试试这个:

@Override
public View getView(final int position, View convertView, ViewGroup parent)
{
    View row = convertView;
    YourWrapper wrapper = null;

    if (row == null)
    {
        row = inflater.inflate(R.layout.layout, parent, false);
        wrapper = new YourWrapper (row);
        row.setTag(wrapper);
    }
    else
        wrapper = (YourWrapper) row.getTag();

    wrapper.getEditText().setOnClickListener(new OnClickListener()
    {
        @Override
        public void onClick(View v)
        {
            // What you want
        }
    });

    return row;
}
于 2012-11-07T06:58:00.437 回答