Android Studio - Cambio di configurazione (Layout --> Orizzontale) onRestart() --> onStart()
Nel cambio di configurazione O.S. Android, termina l’Activity e fa il Restart. Termina L’Activity e la fa ripartire con il nuovo Layout
Il problema sorge, se il Cambio di Configurazione: avviene spesso
Creazione Activity → onCreate() onStart() e onResume()
Anche se non fa questo tipo di giro: onRestart() e onStart()
O.S. Android, l’app deve rispondere alla Catena dei cambi veloci
Il cambio di configurazione lo gestisce O.S. Android, ma può essere anche gestito manualmente.
Gestendo da codice: si può prevenire il Restart di un’Activity da parte dell’O.S. Android
in AndroidManifest.Xml si dichiarano i cambi di configurazione da gestire.
Se passassimo nella modalità LandScape (Orizzontale), con il Metodo: onConfigurationChanged(@NonNull Configuration newConfig) {
e settando le configurazioni, otterremo il TOAST nel caso in cui girassimo il “DEVICE”
// c'è un cambio di configurazione
// oggetto newConfig, ci aiuta nei casi di cambio di configurazione
@Override
public void onConfigurationChanged(@NonNull Configuration newConfig) {
super.onConfigurationChanged(newConfig);
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE)
Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
}
// c'è un cambio di configurazione
// oggetto newConfig, ci aiuta nei casi di cambio di configurazione
@Override
public void onConfigurationChanged(@NonNull Configuration newConfig) {
super.onConfigurationChanged(newConfig);
// se è cambiato l'orientamento e ci troviamo in LandScape (Orizzontale)
// appare un TOAST
if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE)
Toast.makeText(this, "landscape", Toast.LENGTH_SHORT).show();
}