Tengo un caso de uso en el que necesito una referencia al padre RecyclerViewdesde el interior del adaptador, específicamente dentro del onBindViewHoldermétodo. Hasta ahora, lo que estoy haciendo es asignarlo a un miembro de la clase privada en el onCreateViewHoldermétodo que pasa a lo largo del viewGroup parentargumento así:
private ViewGroup mParent;
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
// inflater logic.
mParent = parent;
}
Y haciendo referencia al padre RecyclerViewde onBindViewHolderesta manera:
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
// binder logic.
((RecyclerView)mParent).blahBlahBlah();
}
¿Existe una forma mejor de hacer esto? ¿Quizás RecyclerView.Adaptertiene un camino que quizás me haya perdido?