В чем разница между Display.getRotation () и Display.getOrientation (), кроме того, что Display.getOrientation () устарела? - PullRequest
11 голосов
/ 21 июня 2011

В чем разница между Display.getRotation () и Display.getOrientation (), за исключением того факта, что Display.getOrientation () устарела?

Оба возвращают int, равное одному из Surface.ROTATION_0, Surface.ROTATION_90, Surface.ROTATION_180, Surface.ROTATION_270?

Ответы [ 4 ]

21 голосов
/ 15 февраля 2012

getRotation () просто вызывает устаревший метод getOrientation (), проверьте исходный код класса Display . Так что, кажется, его не рекомендуют просто ради лучшего имени.

1 голос
/ 03 июля 2012

Два метода абсолютно одинаковы, getRotation () просто вызывает getOrientation ().По этой причине я использую getOrientation () в своем приложении, чтобы добавить поддержку более низких уровней Android.Я не вижу причин ограничивать мою возможность распространять свое приложение просто так, чтобы оно могло иметь другое имя метода.Таким образом, я полностью согласен с jap1968.

0 голосов
/ 08 декабря 2011

Ответ просто говорит то же, что и в документации Android. У многих людей есть устройства, производители которых не обновляются. Я считаю глупостью создавать приложения только для пользователей, имеющих современные устройства, когда основной функционал приложения не требует ничего не присутствующего даже (в моем случае) в API v1.

0 голосов
/ 21 июня 2011

с сайта разработчика Android здесь :

public int getOrientation ()

Так как: API Уровень 1 Этот метод осуждается. используйте getRotation ()

Возвращает

ориентация этого дисплея.


public int getRotation ()

Поскольку: API Level 8 Возвращает вращение экрана от его «естественная» ориентация. Возвращенный значение может быть Surface.ROTATION_0 (нет вращение), Surface.ROTATION_90, Surface.ROTATION_180 или Surface.ROTATION_270. Например, если устройство имеет естественно высокий экран, и пользователь перевернул его на бок перейти в альбомную ориентацию, возвращаемое здесь значение может быть Surface.ROTATION_90 или Surface.ROTATION_270 в зависимости от направление было повернуто. Угол вращение нарисованной графики на экран, который противоположен направление физического вращения Устройство. Например, если устройство поворачивается на 90 градусов против часовой стрелки, чтобы компенсировать рендеринг будет повернут на 90 градусов по часовой стрелке и, таким образом, возвращаемое значение здесь будет Surface.ROTATION_90.

...