我正在尋找一種方法,讓我的片段「恢復」它是先前的狀態,然後再關閉設備(因爲我已將圖像保存到該設備中)。我看到了什麼導致了錯誤,但找不到解決方案(類似的問題似乎沒有回答關於如何在首次打開App/Fragment時加載OnCreate)。 當我打開我的應用程序,它創建於我的主要活動的新片段:當應用程序停止/設備關閉時,在android上保存片段狀態/數據
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.replace(R.id.container, new HomeFragment(),"Home_Fragment")
.addToBackStack("Home_Fragment").commit();
FragmentTransaction bin = getSupportFragmentManager().beginTransaction();
bin.replace(R.id.my_image_container, new MyImageFragment(), "banner").commit();
// Listening for image to be sent over
RepeatTask();
}
現在,我已經成功地擁有我的片段保存時,我片段之間切換的所有數據,在我的片段所見的java以下文件:
HomeFragment hm = (HomeFragment)myContext.getSupportFragmentManager().findFragmentByTag("Home_Fragment");
FragmentTransaction ft = myContext.getSupportFragmentManager().beginTransaction();
ft.replace(R.id.container, hm, "Home_Fragment").commit();
但是,當我離開應用程序,這意味着我永久停止或打開手機關閉並重新打開,所有的數據(圖像)都走了,這是有道理的,因爲我的主要活動重新啓動它。 做任何你知道我可以有我的MainActivity不啓動新的片段,每次我打開應用程序,但「恢復」在那裏我有圖像保存,我通過TCP從我的電腦有
可能重複的[android片段 - 如何保存片段中的視圖的狀態,當另一個片段被推上它](http://stackoverflow.com/questions/6787071/android-fragment-how-to-保存狀態的意見在一個片段,當另一個片段) – petey
我可以在片段之間移動並保存其狀態沒有問題。問題是,當我完全停止應用程序(例如關閉手機)並回到它時,我無法弄清楚如何在加載第一片段(圖像因此消失)時關注OnCreate。對不起,如果我不清楚 – Emil
顯然在斷電後「恢復」舊狀態應該保存在文件系統或數據庫中,例如Sqlite。你試過了嗎? – Serg