Mam przypadek użycia, w którym potrzebuję odwołania do rodzica RecyclerViewz wnętrza adaptera, a konkretnie z wnętrza onBindViewHoldermetody. Do tej pory przypisuję go do członka klasy prywatnej w onCreateViewHoldermetodzie przekazującej viewGroup parentargument w następujący sposób:
private ViewGroup mParent;
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
// inflater logic.
mParent = parent;
}
I odnosząc się do rodzica RecyclerVieww onBindViewHolderten sposób:
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
// binder logic.
((RecyclerView)mParent).blahBlahBlah();
}
Czy jest lepszy sposób na zrobienie tego? Może RecyclerView.Adapterma sposób, który mogłem przegapić?