У мене є варіант використання, коли мені потрібне посилання на батьківського RecyclerViewзсередини адаптера, зокрема всередині onBindViewHolderметоду. Поки що я роблю, присвоюю це приватному члену класу в onCreateViewHolderметоді, що проходить уздовж viewGroup parentаргументу, так:
private ViewGroup mParent;
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
// inflater logic.
mParent = parent;
}
І посилання на батька RecyclerViewв onBindViewHolderтакий спосіб:
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
// binder logic.
((RecyclerView)mParent).blahBlahBlah();
}
Чи є кращий спосіб зробити це? Може RecyclerView.Adapter, є спосіб, який я, можливо, пропустив?