我有一個activity A
和activity B
。在我的清單文件中,我已將其啓動模式設置爲「單個任務」,以便僅保留每個活動的一個實例。在這兩個活動中,我使用了ViewPager
三個片段。現在,這裏的問題是,當我填寫的所有activity A
片段的所有字段,然後移動到activity B
,然後填寫的activity A
片段中的數據被刪除。那麼,我們如何恢復碎片的狀態?如何在視圖尋呼機中恢復片段的狀態,如果片段沒有被添加回棧中?
//Global Declaration
Intent i =null;
//method i used in fragment to save the value of fields.
@Override
public void onStop() {
super.onStop();
i.putExtra("customerId", _customerId);
i.putExtra("panCardName", _panCardName);
i.putExtra("panCardAcknowledgementNmber", _panCardAcknowledgementNmber);
i.putExtra("natureOfBusiness", _natureOfBusiness);
i.putExtra("annualTurnover", _annualTurnover);
i.putExtra("networth", _networth);
i.putExtra("occupation", _occupation);
i.putExtra("date", _date);
}
//method in fragment, where i retrieve the saved values.
public void onResume() {
super.onResume();
i = getActivity().getIntent();
if(i != null) {
_customerId = i.getStringExtra("customerId");
_panCardName = i.getStringExtra("panCardName");
_panCardAcknowledgementNmber = i.getStringExtra("panCardAcknowledgementNmber");
_natureOfBusiness = i.getStringExtra("natureOfBusiness");
_annualTurnover = i.getStringExtra("annualTurnover");
_networth = i.getStringExtra("networth");
_occupation = i.getStringExtra("occupation");
_date = i.getStringExtra("date");
}
請不要用這麼多** **大膽和*斜體字在你的問題*,因爲它是難以閱讀,而且往往惹惱許多常客在這裏。此外,你根本沒有發佈任何代碼;我們更喜歡[mcve],以便我們可以嘗試重現您的問題。 –
好的。對不起。現在我已經更新了我的答案。 onResume()總是返回null。 –
@ KENY-N請幫助:( –