2012-04-03 3 views
10

Я разработал одно приложение и настроил его ориентацию «Пейзаж», чтобы он всегда отображался в альбомном режиме на устройстве.Как повернуть мое приложение на 180 градусов вверх дном на вращающемся устройстве на 180 градусов вверх дном?

Теперь я хочу повернуть его на 180 градусов с ног на голову, когда пользователь повернет устройство на 180 градусов вверх дном, чтобы он соответствующим образом отрегулировал и отобразил его правильно. В случае, если я вращаю устройство на 180 градусов с ног на голову, мое приложение не работает 't отрегулируйте соответственно согласно вращению, чтобы он отображался в обратном порядке (снизу вверх), например: предположим, что моя активность имеет 2 текстовых поля сверху и 2 кнопки внизу, поэтому, если вы повернете устройство на 180 градусов вверх дном, Активность не регулируется соответствующим образом, поэтому пользователь может видеть кнопки сверху, а текстовые поля внизу, что неправильно, нужно отрегулировать/повернуть в соответствии с поворотом устройства и отобразить текстовые поля сверху и кнопки внизу.

Пожалуйста, предоставьте свои ценные решения для решения этой проблемы.

С уважением, Пикс

+0

hei ,, я действительно хочу противоположность вашему вопросу ,, я не хочу, чтобы он переворачивал 180. Как сделал это, –

ответ

5

В файле AndroidManifest.xml, вам нужно настроить <activity> использовать ориентацию от датчика. Это должно быть значение по умолчанию, но вы можете направить его на ориентацию датчика для всех 4 возможных ориентаций с помощью android:screenOrientation="fullSensor". См http://developer.android.com/guide/topics/manifest/activity-element.html#screen

EDIT: Если вы хотите, чтобы включить все, кроме одной ориентации, вы можете отключить эту ориентацию путем перехвата события изменения ориентации и отменив его в вашем Activity:

public void onConfigurationChanged(Configuration config) { 
    if (config.orientation != Activity.ORIENTATION_PORTRAIT) { 
    setRequestedOrientation(config.orientation); 
    { 
} 

(Это от вершины голова, но думаю, что это работает, или что-то вроде этого.)

Вам нужно сообщить Android, чтобы изменения ориентации дескриптора приложения тоже были в вашем <activity> с android:configChanges="orientation".

+0

Спасибо за ваши ценные входы, но похоже, что они не поддерживаются в android 2.1 api level 7 .Есть ли способ поддерживать в 2.1 api уровне 7? И я не хочу поворачивать свое приложение в портретном режиме, поэтому мне нужно исправить ориентацию приложения «Пейзаж», но это должно позволить мне вращаться на 180 градусов вверх дном. – piks

+0

«датчик» также работает, но не допускает ориентацию реверсивного пейзажа на некоторых устройствах. Я отредактирую свой ответ, чтобы исключить одну ориентацию. –

+0

выше код не работает должным образом, после поворота устройства на 180 градусов активность не перерисовывается для отображения в соответствии с вращением устройства. – piks

13

указать:

android:screenOrientation="sensorLandscape" 

в вашем AndroidManifest.xml. Это преобразует приложение между ландшафтом и reverseLandscape.

+0

Пройдя 10-12 ответов и проведя 2-3 часа, этот ответ разрешил мою проблему за секунду. –

+0

Спасибо, это работает !!!! –

Смежные вопросы