ActionBar Tabs con fragmentos en rotación
I'am construir una aplicación con un ActionBar
y dos pestañas a continuación. Todo funciona bien si el dispositivo / emulador no está girado. Si se gira, el estado de tabulación cambia automáticamente a tab1 (normal, porque onCreate
se llama) pero el contenido no cambia. Si selecciono una pestaña en la nueva orientación, el método onCreateView()
del Fragment
seleccionado se llama pero la vista no se actualiza (permanece siempre igual). ¿Algun consejo?
El código.
- Comparando La compatibilidad de la barra de acción de Android, el buscapersonas y las pestañas de muestra a ActionBarSherlock
- TabHost definido en el diseño está dando NullPointerException durante setContent
- Cambiar entre la pestaña mediante el grupo de actividades desea mostrar la última actividad - Tab ActivityGroup
- Número de pestañas en ActionBar
- Android: Cambiar las actividades en un diseño de pestañas deslizable
Actividad principal:
ActionBar actionbar = getActionBar(); actionbar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); ActionBar.Tab ATab = actionbar.newTab().setText(R.string.player); ActionBar.Tab BTab = actionbar.newTab().setText(R.string.stations); Fragment AFragment = new AFragment(); Fragment BFragment = new BFragment(); PlayerTab.setTabListener(new MyTabsListener(AFragment)); StationsTab.setTabListener(new MyTabsListener(BFragment)); actionbar.addTab(ATab); actionbar.addTab(BTab);
Con pestañas idénticas que muestran una simple vista de texto. La vista de texto simple dice qué ficha está seleccionada.
Fragmentos:
@Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment return inflater.inflate(R.layout.a, container, false); }
El diseño de fragmentos, mencionado anteriormente, sólo contiene un TextView con texto codificado. (Sólo para fines de prueba)
El diseño principal se ve así.
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <LinearLayout android:id="@+id/fragment_container" android:layout_width="match_parent" android:layout_height="match_parent" > </LinearLayout> </LinearLayout>
- Android tabHost
- ¿Cómo puedo quitar el divisor entre el ActionBar y las pestañas
- SlidingTabLayout color de fondo
- Android FragmentTabHost: Excepción generada durante la renderización: No se conoce ninguna pestaña null
- Combinar el menú TabActivity con los menús de Actividades contenidas
- ¿Podemos establecer una imagen de fondo en pestañas?
- Haga clic en la pestaña de Android
- ¿Cómo detener títulos en las pestañas de Android de envolver en el medio de una palabra?
Resuelto. He recreado el fragmento cada vez, no lo hace más solucionado.
Cambiado en mi TabListener y onTabSelected(Tab tab, FragmentTransaction ft)
, ft.add()
a ft.replace()
- Kotlin – lateinit VS ¿Alguna? = Nulo
- Evitando el error FALLED BINDER TRANSACTION al actualizar muchos mapas de bits de widget