मुझे पता है कि यह एक देर से प्रतिक्रिया है, लेकिन मैं एक समान मुद्दे का सामना कर रहा था और मैं इसे notifyDataSetChanged()
सही जगह पर उपयोग करके हल करने में कामयाब रहा ।
तो मेरी स्थिति इस प्रकार थी।
मुझे एक एक्शन बार टैब (टुकड़े) में एक सूची को अपडेट करना था जिसमें पूरी तरह से अलग गतिविधि से लौटे सामग्री थी। हालाँकि, प्रारंभ में, यह सूची किसी भी परिवर्तन को प्रतिबिंबित नहीं करेगी। हालाँकि, जब मैंने दूसरा टैब क्लिक किया और फिर वांछित टैब पर लौटा, तो सूची को अन्य गतिविधि से सही सामग्री के साथ अपडेट किया जाएगा। तो इसे हल करने के लिए मैंने notifyDataSetChanged()
एक्शन बार एडॉप्टर का उपयोग उस गतिविधि के कोड में किया, जिसमें डेटा वापस करना था।
यह कोड स्निपेट है जिसका उपयोग मैंने गतिविधि में किया था।
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId())
{
case R.id.action_new_forward:
FragmentTab2.mListAdapter.notifyDataSetChanged();//this updates the adapter in my action bar tab
Intent ina = new Intent(getApplicationContext(), MainActivity.class);
ina.putExtra("stra", values1);
startActivity(ina);// This is the code to start the parent activity of my action bar tab(fragment).
}
}
यह गतिविधि कुछ डेटा को वापस FragmentTab2
लौटाएगी और यह सीधे मेरी सूची को अपडेट कर देगी FragmentTab2
।
आशा है कि कोई इसे उपयोगी पाता है!