У меня есть ориентация активности в манифесте, установленном как портрет. Поскольку я не хочу, чтобы мой экран вращался.Android: Получить текущую ориентацию устройства
Но нажав кнопку, я хочу получить текущую ориентацию устройства (портретную или альбомную) в Android? Мне не требуется непрерывное обновление от датчиков; просто текущая ориентация устройства, когда я нажимаю кнопку, достаточно.
PS: Ориентация устройства - это способ, которым я держу свое устройство. Не смешивайте его с ориентацией экрана.
Это то, что я сделал до сих пор?
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;
Даже используя следующий метод не помогает
getResources().getConfiguration().orientation
Это всегда возвращает 1, так как моя деятельность по умолчанию установлен портрет.
Образец/пример кода будет высоко оценен.
Спасибо.
http://stackoverflow.com/questions/2795833/check-orientation-on-android-phone мне потребовалось 10 секунд. to google –
Барт: Ну, я прошел через то же самое. но его отказ при фиксированной ориентации экрана. Я хочу, чтобы ориентация устройства была нажата на кнопку – Kushal
. Вы можете запустить код в ActionListener для своей кнопки –