Я знаю, что это поздний ответ, но я столкнулся с подобной проблемой, и мне удалось решить ее, используя 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
.
Надеюсь, кто-нибудь найдет это полезным!