उपयोग तर्क हम ListAdapter
के साथ किया था। यह उनके माता-पिता के बजाय एडाप्टर आइटम अक्षम कर देगा।
public interface RecyclerViewItemEnabler{
public boolean isAllItemsEnabled();
public boolean getItemEnabled(int position);
}
और कार्यान्वयन इस तरह दिखना चाहिए:
public class RecyclerAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> implements RecyclerViewItemEnabler{
@Override
public void onViewAttachedToWindow(RecyclerView.ViewHolder holder) {
super.onViewAttachedToWindow(holder);
holder.itemView.setEnabled(isAllItemsEnabled());
//or do this in onBindViewHolder()
}
@Override
public boolean isAllItemsEnabled(){ return mAllEnabled; }
@Override
public boolean getItemEnabled(int position){
return true;
}
public void setAllItemsEnabled(boolean enable){
mAllEnabled = enable;
notifyItemRangeChanged(0, getItemCount());
}
}
उपयोग: mRecylerAdapter.setAllItemsEnabled(!mSwipeRefreshLayout.isRefreshing());
स्रोत
2015-01-16 04:18:08
वर्क्स ठीक! बहुत बहुत धन्यवाद @ निकोलाडेस्पोटोस्की! – falvojr
किसी कारण से यह मेरे लिए काम नहीं करता है। न केवल मैं प्रत्येक आइटम पर क्लिक कर सकता हूं लेकिन सभी आइटम भी क्लिक पर एक साथ झपकी देते हैं। मैंने इस सटीक कोड को लागू किया, सीधे आगे लगता है लेकिन ... – iBobb