I'am crear una aplicación con un ActionBar
y dos pestañas de abajo. Todo funciona bien si el dispositivo/emulador isnt gira. Si girado, estado de ficha cambia automaticale a Tab1 (normal, porque onCreate
ser llamado) pero el contenido no te dan cambiado. Si selecciono una pestaña en la nueva orientación, el método de la onCreateView()
Fragment
seleccionadas serán llamadas pero la vista no te dan actualiza (permanecer siempre la misma). ¿Algun consejo?aquí actionbar con fragmentos en rotate
El código.
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 fichas idénticas que muestran un TextView sencilla. La vista de texto simple indica qué pestaña 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);
}
la disposición Fragmento, mencionado anteriormente, solamente contiene una TextView con el texto codificado. (Solo para fines de prueba)
El diseño principal tiene este aspecto.
<?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>
¿Quieres onCreate() que se llamará cuando se gira el dispositivo? – nhaarman
Sí y No, en este ejemplo está bien. En la aplicación final, también está bien, pero creo que no es la mejor manera. ¿Quieres usar 'android: configChanges =" keyboardHidden | orientation "'? Lo leí y alguien dijo algo sobre pérdidas de memoria y último recurso. ¿Está bien? ¿Hay una mejor manera? – Leandros