2013-05-07 3 views
0

У меня есть приложение с вкладками, использующее фрагменты. Ниже приведен фрагмент кода из одного из фрагментов в ТабеСохранение фрагмента фрагмента не изменилось

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup viewGroup, Bundle savedInstanceState) { 
    accountsView = inflater.inflate(R.layout.activity_accounts, viewGroup, false); 

    //obtain the labels- Top 50 Spending aacounts 
    spendingLabel = (TextView) accountsView.findViewById(R.id.textView1); 

    //get search box 
    accountSearch = (EditText) accountsView.findViewById(R.id.vAccountSearch); 

    return accountsView; 
} 

Вот это OnStart()

@Override 
public void onStart() { 
    super.onStart(); 
    fillData(); 
} 

fillData() извлекает DAT с сервера. Приложение теперь заполняет listView при нажатии на вкладку (путем вызова fillData()). Если я переключусь на другие вкладки и перейду на tabA, страница снова вызывает fillData() и воссоздает весь вид.

Как остановить его перезагрузку и сохранить вид без изменений при переключении табуляции?

Поскольку я новичок во Фрагментах, мне трудно найти решение. Кто-нибудь это делал раньше?

+0

Почему вы не называть fillData() в onCreateView. Любые проблемы? –

+0

Да, я могу это сделать! Но это ничего не меняет. Он снова вызывает fillData() – Renjith

ответ

0

Согласно lifecycle из Android приложения пытаются переопределить OnCreate вместо OnStart

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    fillData(); 
} 
Смежные вопросы