Sé que esta es una respuesta tardía pero me enfrentaba a un problema similar y logré resolverlo usando notifyDataSetChanged()
en el lugar correcto.
Así que mi situación fue la siguiente.
Tuve que actualizar una vista de lista en una pestaña de la barra de acciones (fragmento) con los contenidos devueltos de una actividad completamente diferente. Inicialmente, sin embargo, la vista de lista no reflejaría ningún cambio. Sin embargo, cuando hice clic en otra pestaña y luego regresé a la pestaña deseada, la vista de lista se actualizaría con el contenido correcto de la otra actividad. Entonces para resolver esto usé notifyDataSetChanged()
del adaptador de barra de acción en el código de la actividad que tenía que devolver los datos.
Este es el fragmento de código que utilicé en la actividad.
@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).
}
}
Esta actividad volvería a algunos datos FragmentTab2
y sería actualizar directamente a mi vista de lista en FragmentTab2
.
Espero que alguien encuentre esto útil!
http://stackoverflow.com/questions/14503006/android-listview-not-refreshing-after-notifydatasetchanged – ranjan