當出現這個" IllegalArgumentException "錯誤時,找到了一個方法如下:
public void onDestroyView() {
super.onDestroyView();
ExamFragment f = (ExamFragment)getFragmentManager().findFragmentById(R.id.fragment1);
if (f != null) {
getFragmentManager().beginTransaction().remove(f).commit();
}
}
//其中 ExamFragment 是我自己另外創建的 Fragment ,而顯示畫面(latout內)有放置Fragment控件, id 為 fragment1
但是又有了新的錯誤 "IllegalStateException"
用try catch包起來後就過了!! 好像是避免重複寫的關係...
最後變成
public void onDestroyView() {
super.onDestroyView();
ExamFragment f = (ExamFragment) getFragmentManager().findFragmentById(R.id.fragment1);
try {
if (f != null) {
getFragmentManager().beginTransaction().remove(f).commit();
}
} catch (IllegalStateException e) {
}
}
留言列表

