0
我使用Eclipse來編譯應用程序,我曾經得到這個錯誤但不是很多。但是因爲我已經切換到android studio,所以我得到了這個崩潰。它幾乎崩潰了所有設備。我試過做一切,但似乎無法解決這個問題。我試過使用getfragmentManager()和getSupportFragmentManager(),在兩者中都得到這個崩潰。不知道現在該做什麼?IllegalStateException:無活動FragmentManager.java
下面是我用來切換片段的代碼。
private void showFragment(Fragment fragment){
fragmentManager = getFragmentManager();
fragmentTransaction = fragmentManager.beginTransaction();
if (!fragment.isAdded()) {
fragmentTransaction.replace(R.id.home_frame, fragment).commitAllowingStateLoss();
currentFragment = fragment;
}
}
和我所有的片段延長它具有以下代碼
private static final Field sChildFragmentManagerField;
static {
Field f = null;
try {
f = Fragment.class.getDeclaredField("mChildFragmentManager");
f.setAccessible(true);
} catch (NoSuchFieldException e) {
Log.wtf("LOGTAG", "Error getting mChildFragmentManager field", e);
}
sChildFragmentManagerField = f;
}
@Override
public void onDetach() {
super.onDetach();
if (sChildFragmentManagerField != null) {
try {
sChildFragmentManagerField.set(this, null);
} catch (Exception e) {
Log.e("LOGTAG", "Error setting mChildFragmentManager field", e);
}
}
}
請大家幫幫忙基地片段。我在商店裏收到大量的崩潰和糟糕的評論。
下面是我的堆棧跟蹤
Fatal Exception: java.lang.IllegalStateException: No activity
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1054)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1049)
at android.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:1871)
at android.app.Fragment.performActivityCreated(Fragment.java:2067)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:912)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1067)
at android.app.BackStackRecord.run(BackStackRecord.java:833)
at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1454)
at android.app.FragmentManagerImpl$1.run(FragmentManager.java:447)
你爲什麼使用反射來獲取子FragmentManager? –
我使用的此鏈接](http://stackoverflow.com/questions/14929907/causing-a-java-illegalstateexception-error-no-activity-only-when-navigating-to)嘗試和解決,這被標記作爲正確的答案,並且確實將錯誤修復到了極限,但沒有完全解決它。 – Renegade