當出現這個" 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) {
  }
}

全站熱搜
創作者介紹
創作者 程式小試身手 的頭像
程式小試身手

程式小試身手

程式小試身手 發表在 痞客邦 留言(0) 人氣()