浓咖啡。 执行“加载适配器数据”时出错

我有一个ListView,显示数据库中的数据。

db = new DB(this); db.open(); String[] from = new String[]{DB.COLUMN_FIRSTNAME, DB.COLUMN_LASTNAME}; int[] to = new int[]{android.R.id.text1, android.R.id.text2}; scAdapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_activated_2, null, from, to, 0); lvData = (ListView) findViewById(R.id.lvData); lvData.setAdapter(scAdapter); lvData.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL); lvData.setMultiChoiceModeListener(new AbsListView.MultiChoiceModeListener() { 

它将数据库中的名字和姓氏显示为项目列表: 单击到UI

所以,今天我试着用这个应用程序使用浓咖啡,我找不到一个方法来点击包含文本的项目。

当我使用:

 onData(anything()) .inAdapterView(withId(R.id.lvData)) .atPosition(3) .perform(click()); 

它完美的作品。 但是我想点击包含相应项目文本的项目。

我到目前为止所尝试的(我在stackoverflow,google,github等find的所有东西):

 onView(allOf(withText("Ivan Ivanov"))).perform(click()) onData(allOf(is(instanceOf(MainActivity.class)),is("Ivan Ivanov"))) .inAdapterView(withId(R.id.lvData)) .perform(click()); onData(hasToString(startsWith("v"))) .inAdapterView(withId(R.id.lvData)) .atPosition(0).perform(click()); onData(instanceOf(MainActivity.class)) .inAdapterView(withId(R.id.lvData)) .atPosition(0) .check(matches(hasDescendant(withText("Ivan Ivanov")))); onData(anything()).inAdapterView(withContentDescription("Ivan Ivanov")) .atPosition(0).perform(click()); 

所以,也许是string“伊万·伊万诺夫”之间的差异,其中包含数据库中的数据: firstName + lastName

Solutions Collecting From Web of "浓咖啡。 执行“加载适配器数据”时出错"