Bunun geç bir yanıt olduğunu biliyorum ama benzer bir sorunla karşı karşıya kaldım notifyDataSetChanged()
ve doğru yerde kullanarak çözmeyi başardım .
Benim durumum şöyleydi.
Tamamen farklı bir etkinlikten döndürülen içeriklerle bir eylem çubuğu sekmesindeki (fragman) bir liste görünümünü güncellemek zorunda kaldım. Bununla birlikte, başlangıçta liste görünümü hiçbir değişikliği yansıtmaz. Ancak, başka bir sekmeyi tıklayıp sonra istediğiniz sekmeye döndüğümde, liste görünümü diğer etkinlikten doğru içerikle güncellenir. Bunu çözmek notifyDataSetChanged()
için veriyi döndürmek zorunda olan aktivitenin kodunda eylem çubuğu adaptörünü kullandım .
Bu, etkinlikte kullandığım kod snippet'idir.
@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).
}
}
Bu etkinlik bazı verileri adresine döndürecek FragmentTab2
ve doğrudan liste görünümümü güncelleyecek FragmentTab2
.
Umarım birisi bunu faydalı bulur!