Проблема определения ориентации телефона - PullRequest
0 голосов
/ 04 декабря 2010

В моем методе onCreate я хотел бы определить ориентацию и установить соответствующее фоновое изображение.

Я могу получить ориентацию так:

    Display dis = getWindowManager().getDefaultDisplay();
    int orientation = dis.getOrientation();

Я проверял это на Galaxy S и Moment.

Когда я нахожусь в портретном режиме, это возвращает значение 0. Когда я нахожусь в альбомном режиме, это возвращает значение 1.

Однако определение Configuration.ORIENTATION_LANDSCAPE имеет значение 2, а определение Configuration.ORIENTATION_PORTRAIT имеет значение 1.

Итак, когда я переключаю телефон в альбомный режим, он дает мне Configuration.ORIENTATION_PORTRAIT. И когда я переключаю телефон в портретный режим, он дает мне Configuration.ORIENTATION_UNDEFINED.

Что происходит ???

Я использую API уровень 7

Ответы [ 2 ]

1 голос
/ 04 декабря 2010

Одна вещь, которую вы могли бы сделать, - это просто поместить альбом для рисования в папку /drawable-land/, и Android автоматически вытянет его в зависимости от ориентации.Однако вместо того, чтобы полагаться на это, лучше создать альбомную версию макета в /layout-land/, в качестве фона которой используется альтернативная версия.

1 голос
/ 04 декабря 2010
...