1
屏幕上有多個水平Recyclerview
。我想在第一個橫向Recyclerview
的第一項上執行意式濃縮咖啡單擊事件。請讓我知道我們如何實現它。Espresso AmbiguousViewMatcherException:如何從多個水平Recyclerview中選擇第一個水平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));
}
它讓我有以下異常:
android.support.test.espresso.AmbiguousViewMatcherException
您可以發佈您的佈局文件?有可能有一種方法可以在您的應用中執行此操作,而無需通過使用RecyclerViewAction更具體的查看器匹配器來創建自定義ViewActions。 actionOnHolderItem() – jdonmoyer
@jdonmoyer我在我的代碼在運行時創建佈局。通過我得到了解決方案,我提到了答案。但是現在面臨的另一個問題是,我的'RecyclerView'適配器大小變爲零,所以我無法執行列表中的第一項。但在屏幕上,我可以在我的'RecyclerView'中看到數據。它的任何輸入? – chank007