Voglio solo impostare alcuni flag quando il mio orientamento è in orizzontale in modo che quando l'attività viene ricreata in onCreate() posso passare da cosa caricare in verticale o orizzontale. Ho già un xml layout-land che gestisce il mio layout.Come posso ottenere l'orientamento dello schermo corrente?
public void onConfigurationChanged(Configuration _newConfig) {
if (_newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
this.loadURLData = false;
}
if (_newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) {
this.loadURLData = true;
}
super.onConfigurationChanged(_newConfig);
}
Over-riding onConfigurationChanged impedirà il caricamento del layout-land xml in orientamento orizzontale.
Voglio solo ottenere l'orientamento corrente del mio dispositivo su onCreate(). Come posso ottenere questo?
Fornisce solo due valori ORIENTATION_PORTRAIT e ORIENTATION_LANDSCAPE. C'è un modo per ottenere tutti e quattro i valori da ActivityInfo? (Vale a dire LANDSCAPE_REVERSE e PORTRAIT_REVERSE) – HRJ
@HRJ è possibile utilizzare getWindowManager(). GetDefaultDisplay().getRotation() – MKJParekh
getWindowManager(). getDefaultDisplay(). getRotation() restituisce la rotazione con riferimento all'orientamento "naturale" del display, ovvero per un tablet restituisce Surface.ROTATION_0 in modalità orizzontale, mentre per un telefono cellulare viene restituito lo stesso valore per il ritratto. –