Il existe plusieurshorizontaux sur un écran. Je veux effectuer un événement click expresso sur le premier élément de la première horizontale Recyclerview
. S'il vous plaît laissez-moi savoir comment nous pouvons y parvenir.Espresso AmbiguousViewMatcherException: Comment puis-je sélectionner un premier Recyclerview horizontal à partir de plusieurs horizontaux Recyclerview
onView(withId(R.id.craousal_recyclerview))
.perform(RecyclerViewActions.actionOnItemAtPosition(1, new ClickOnImageView()));
public class ClickOnImageView implements ViewAction {
ViewAction click = click();
@Override
public Matcher<View> getConstraints() {
return click.getConstraints();
}
@Override
public String getDescription() {
return " click on custom image view";
}
@Override
public void perform(UiController uiController, View view) {
click.perform(uiController, view.findViewById(R.id.craousal_imageview));
}
Il me donne l'exception suivante:
android.support.test.espresso.AmbiguousViewMatcherException
Pouvez-vous poster vos fichiers de mise en page? Il existe probablement un moyen de le faire dans votre application sans avoir recours à la création de ViewActions personnalisées, en utilisant un comparateur d'affichage plus spécifique avec RecyclerViewAction. actionOnHolderItem() – jdonmoyer
@jdonmoyer Je crée une mise en page à l'exécution dans mon code. Par le j'ai eu la solution pour cela et j'ai mentionné la réponse. Mais maintenant face à un autre problème que ma taille de l'adaptateur 'RecyclerView' arrive à zéro, je ne suis pas en mesure d'effectuer un clic sur le premier élément de la liste. Mais à l'écran, je peux voir les données dans mon 'RecyclerView'. Toute contribution à ce sujet? – chank007