7
У меня есть ListView
с изображениями и текстом. Когда я пытаюсь нажать пункт, я получаю ошибкуAndroid Espresso ListView click item
android.support.test.espresso.AmbiguousViewMatcherException: 'with id: com.cifrasoft.telefm:id/cardsGridView' matches multiple views in the hierarchy.
Problem views are marked with '****MATCHES****' below.
Я использую следующий код:
onData(hasToString(startsWith("Item Text")))
.inAdapterView(withId(R.id.cardsGridView))
.perform(click());
Могу ли я нажимаю ListView
, используя позицию Adapter
, без спичек или startWith
?
Это означает, что у вас есть несколько видов с именованным ID в иерархии представлений. Можете ли вы опубликовать все сообщение об ошибке? – haffax
Да, конечно. Но полная ошибка слишком длинна.http: //pastebin.com/eahDGDMb – rz0
От взгляда на всю иерархию кажется, что у вас есть ViewPager, который показывает несколько страниц с тремя из них, имеющих AdapterView с идентификационными картамиGridView. Таким образом, у вас есть один AdapterView, ViewPager, с другим вложенным адаптером, вашим ListView. Что может быть сделано, чтобы предоставить представления, возвращенные из отдельных идентификаторов или тегов Adapter.getView, и использовать сокет isDescendantOf() в вызове inAdapterView() вместе с withId. – haffax