Después de investigar con especialistas en el tema, programadores de diversas ramas y profesores dimos con la respuesta a la pregunta y la dejamos plasmada en este post.
Solución:
esto es lo que estas buscando.
También tuve este problema. Y como tú, la respuesta es muy difícil de encontrar. Pero HAY una manera fácil de obtener ViewHolder desde una posición específica (algo que probablemente hará mucho en el Adaptador).
myRecyclerView.findViewHolderForAdapterPosition(pos);
NOTA: Si la Vista ha sido reciclada, esta devolverá null
. Gracias a Michael por darse cuenta rápidamente de mi importante omisión.
Supongo que estás usando un LinearLayoutManager
para mostrar la lista. Tiene un buen método llamado findViewByPosition
que
Encuentra la vista que representa la posición del adaptador dada.
Todo lo que necesita es la posición del adaptador del artículo que le interesa.
editar: como señaló Pablo Woitaschek en los comentarios, findViewByPosition
es un método de LayoutManager
por lo que funcionaría con todos los LayoutManagers (es decir, StaggeredGridLayoutManager
etc)
si quieres el View
asegúrese de acceder a la itemView
propiedad de ViewHolder así: myRecyclerView.findViewHolderForAdapterPosition(pos).itemView;
Acuérdate de que te damos el privilegio aclarar si chocaste tu escollo justo a tiempo.