Android 如何使用浓缩咖啡长时间按RecyclerView中的项目

Android 如何使用浓缩咖啡长时间按RecyclerView中的项目,android,android-recyclerview,android-espresso,Android,Android Recyclerview,Android Espresso,要验证RV中项目的文本字符串,我使用 private fun verifyItemName(pos: Int, name: String) = onView( RecyclerViewMatcher(R.id.recycler_view) .atPositionOnView(pos, R.id.text_view) ).check(matches(withText(name))) 其中,RecycleServiceWMatcher来自 类

要验证RV中项目的文本字符串,我使用

private fun verifyItemName(pos: Int, name: String) =
    onView(
        RecyclerViewMatcher(R.id.recycler_view)
            .atPositionOnView(pos, R.id.text_view)
    ).check(matches(withText(name)))
其中,
RecycleServiceWMatcher
来自

类RecycleServiceWatcher(私有val RecycleServiceWid:Int){
位置(位置:Int):匹配器{
返回位置视图(位置-1)
}
有趣的位置视图(位置:Int,targetViewId:Int):匹配器{
返回对象:TypeSafeMatcher(){
变量资源:资源?=null
var childView:视图?=null
覆盖乐趣描述(描述:描述){
var idDescription=RecycleServiceWid.toString()
if(this.resources!=null){
idDescription=try{
this.resources!!.getResourceName(RecycleServiceWid)
}catch(var4:Resources.NotFoundException){
“$RecycleServiceId(未找到资源名称)”
}
}
description.appendText(“id为:$idDescription at position:$position的RecyclerView”)
}
public override fun matchessesafely(视图:视图):布尔值{
this.resources=view.resources
if(childView==null){
val recyclerView=view.rootView.findviewbyd(recyclerViewId)
if(recyclerView?.id==recyclerViewId){
val viewHolder=recyclerView.findViewHolderForAdapterPosition(位置)
childView=viewHolder?.itemView
}否则{
返回错误
}
}
返回if(targetViewId==-1){
视图===子视图
}否则{
val targetView=childView?.findViewById(targetViewId)
视图===目标视图
}
}
}
}
}
但是我怎么能长时间按rv中的项目呢?

找到了它

onView(
    RecyclerViewMatcher(R.id.rv_list)
        .atPositionOnView(0, R.id.iv_direction)
).perform(longClick())
找到了

onView(
    RecyclerViewMatcher(R.id.rv_list)
        .atPositionOnView(0, R.id.iv_direction)
).perform(longClick())