Ho l'orientamento dell'attività in manifest impostato come ritratto. Come non voglio che il mio schermo ruoti.Android: Ottieni l'orientamento corrente del dispositivo
Ma On Facendo clic su un pulsante, voglio ottenere l'orientamento corrente del dispositivo (verticale o orizzontale) in Android? Non ho bisogno di aggiornamenti continui dai sensori; è sufficiente l'orientamento del dispositivo corrente quando clicco sul pulsante.
PS: l'orientamento del dispositivo è il modo in cui sto tenendo il mio dispositivo. Non mescolare questo con l'orientamento dello schermo.
Questo è quello che ho fatto finora?
int PORT=1,LAND=2;
WindowManager windowService = (WindowManager)getSystemService(Context.WINDOW_SERVICE);
int rotation = windowService.getDefaultDisplay().getRotation();
if (Surface.ROTATION_0 == rotation) {
rotation = PORT;
} else if(Surface.ROTATION_180 == rotation) {
rotation = PORT;
} else if(Surface.ROTATION_90 == rotation) {
rotation = LAND;
} else if(Surface.ROTATION_270 == rotation) {
rotation = LAND;
}
return rotation;
Anche utilizzando il seguente metodo non aiuta
getResources().getConfiguration().orientation
E 'sempre ritornare 1 dato che il mio difetto Attività è impostato un ritratto.
Esempio/codice di esempio sarà molto apprezzato.
Grazie.
http://stackoverflow.com/questions/2795833/check-orientation-on-android-phone mi ci sono voluti 10 secondi. per google –
Bart: Beh, ho passato lo stesso. ma non funziona quando l'orientamento dello schermo è fisso. Voglio che l'orientamento del dispositivo sul pulsante clic – Kushal
Puoi eseguire il codice in ActionListener per il tuo pulsante –