Tengo el siguiente código en mi Actividad:Android Fragmento backStack tema
public void categoryClicked(int categoryId, String categoryName) {
ItemList newFragment = ItemList.newInstance(categoryId);
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.replace(R.id.itemContainer, newFragment);
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
ft.addToBackStack(null);
ft.commit();
}
Funciona como se esperaba, soy capaz de volver después de hacer clic un par de veces a los estados anteriores. Sin embargo, si sólo voy un profundo, tengo la siguiente excepción:
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): java.lang.IllegalStateException: Content view not yet created
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.app.ListFragment.ensureList(ListFragment.java:377)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.app.ListFragment.getListView(ListFragment.java:277)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at com.xxxxx.fragment.ItemList.onActivityCreated(ItemList.java:67)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:749)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:921)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.app.BackStackRecord.popFromBackStack(BackStackRecord.java:639)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.app.FragmentManagerImpl.popBackStackState(FragmentManager.java:1254)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.app.FragmentManagerImpl.popBackStackImmediate(FragmentManager.java:402)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.app.Activity.onBackPressed(Activity.java:2057)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.app.Activity.onKeyDown(Activity.java:1953)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.view.KeyEvent.dispatch(KeyEvent.java:2335)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.app.Activity.dispatchKeyEvent(Activity.java:2236)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchKeyEvent(PhoneWindow.java:1648)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.view.ViewRoot.deliverKeyEventPostIme(ViewRoot.java:2682)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.view.ViewRoot.handleFinishedEvent(ViewRoot.java:2655)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.view.ViewRoot.handleMessage(ViewRoot.java:1952)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.os.Handler.dispatchMessage(Handler.java:99)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.os.Looper.loop(Looper.java:126)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at android.app.ActivityThread.main(ActivityThread.java:3997)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at java.lang.reflect.Method.invokeNative(Native Method)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at java.lang.reflect.Method.invoke(Method.java:491)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
03-10 22:17:19.895: ERROR/AndroidRuntime(23075): at dalvik.system.NativeStart.main(Native Method)
Así que, básicamente, si yo llamo el reemplazar una vez, los errores por mi cuando pulso el botón de retroceso.
Además, con ListFragment, ¿tengo que establecer el fondo en blanco? No lo toqué y puedo ver el antiguo listado de listas mostrando ...
¡Gracias!
¿Cómo colocas los fragmentos en el diseño? – Macarse
Lo tengo definido en XML como hijo de ViewGroup R.id.itemContainer – runor49
mmm .. intente pegar el diseño xml. – Macarse