rotación - manual de programacion android pdf
evitar que la actividad se reinicie cuando la orientación cambie (2)
Soy nuevo en el desarrollo de Android. Tengo pantallas separadas para el modo retrato y paisaje. Cuando cambio mi orientación, la pantalla correspondiente se carga y la actividad se reinicia. Ahora no quiero que mi actividad se reinicie cuando cambie la orientación, pero debería cargar su pantalla correspondiente (axml).
Yo he tratado
[Actividad (Label = "MyActivity", ConfigurationChanges = Android.Content.PM.ConfigChanges.Orientation)]
la línea anterior detiene la actividad reiniciada pero carga la misma pantalla (axml). Por favor recomiende . Gracias
Dado que ha especificado cambiar el sistema operativo al que desea administrar la orientación, ahora tiene que encargarse de cualquier cambio en el diseño, como este:
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) {
setContentView(R.layout.portrait);
//do other initialization
} else if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
setContentView(R.layout.landscape);
//do other initialization
}
}
Escribe este código en tu actividad
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
setContentView(R.layout.landscapeView);
} else {
setContentView(R.layout.portraitView);
}
}
Y también agregue esta línea en su archivo Manifest
android:configChanges="orientation|keyboardHidden|screenSize"
Por lo tanto, esto manejará ambas cosas, no reiniciará su actividad y cargará el diseño según los cambios de orientación.