android - सिंगल रीसाइक्लियर वीव(एंड्रॉइड) के साथ उपयोग के लिए कई रीसाइक्लेअर वीव। एडेप्टर मर्ज करें




merge adapter (3)

मेरे पास एक JSON स्ट्रिंग है जिसे मैं 4 डेटासेट में तोड़ता हूं, प्रत्येक डेटासेट में इसका रीसाइक्लेअर वीव। एडेप्टर होता है।

मैं एक ही रीसायकल में सभी एडाप्टर उत्पादन करना चाहता हूं, आदर्श रूप से प्रत्येक एडेप्टर के लिए स्टिकी हेडर्स के साथ।

मेरा मानना ​​है कि यह कॉमन्सवेयर के सीडब्ल्यूएसी-मर्ज ( https://github.com/commonsguy/cwac-marge ) के माध्यम से ListViews का उपयोग करके किया जा सकता है

रीसाइक्लेअर व्यू के साथ यह कैसे हो सकता है या कैसे किया जा सकता है? मैं एक खूबसूरत डेवलपर हूँ, इसलिए कम प्रतिक्रिया की प्रतिक्रिया बेहतर ;- डी

धन्यवाद।


मैं इस पुस्तकालय के लिए जाना होगा: https://github.com/martijnvdwoude/recycler-view-merge-adapter

अपने कोड में इसका उपयोग करने के तरीके के उदाहरणों के लिए गिथब पृष्ठ पर प्रलेखन की जांच करें।

रीडमी से निकालें:

RecyclerView myRecyclerView = (RecyclerView) view.findViewById(R.id.my_recycler_view);

// Create new merge adapter
RecyclerViewMergeAdapter mergeAdapter = new RecyclerViewMergeAdapter();

// Add any number of subadapters to merge adapter
MyRecyclerViewSubAdapter subAdapter1 = new MyRecyclerViewSubAdapter();
MyRecyclerViewSubAdapter subAdapter2 = new MyRecyclerViewSubAdapter();

mergeAdapter.addAdapter(subAdapter1);
mergeAdapter.addAdapter(subAdapter2);

// Set merge adapter to RecyclerView
myRecyclerView.setAdapter(mergeAdapter);

आप GroupAdapter पर देख सकते हैं

GroupAdapter.Builder builder = new GroupAdapter.Builder();
builder.add(firstAdapter);
builder.add(secondAdapter);
GroupAdapter groupAdapter = builder.build();
recyclerView.setAdapter(groupAdapter);

मैंने एक ऐसा वर्ग बनाया जो वास्तव में आप क्या चाहते हैं https://gist.github.com/agustindev/e2faa7ef6a7b61cc0eafeeaf81e4e434

    ...
    val multipleAdapter = MultipleAdapter()
    val adapter1 = object: RecyclerView.Adapter<RecyclerView.ViewHolder>(){ ... }
    val adapter2 = object: RecyclerView.Adapter<RecyclerView.ViewHolder>(){ ... }
    val adapter3 = object: RecyclerView.Adapter<RecyclerView.ViewHolder>(){ ... }
    multipleAdapter.addAdapter(adapter1)
    multipleAdapter.addAdapter(adapter2)
    multipleAdapter.addAdapter(adapter3)

    recyclerView.adapter = multipleAdapter




commonsware-cwac