Cómo bloquear la orientación de la aplicación android en modo retrato?

Estoy desarrollando una aplicación para Android cuya orientación no quiero cambiar al modo horizontal cuando el usuario gira el dispositivo. Además, quiero que la orientación bloqueada sea el modo de retrato en los teléfonos y el modo de paisaje en las tabletas. ¿Puede lograrse esto, si es así cómo? Gracias.

Sólo tienes que definir la propiedad debajo dentro del elemento de actividad en tu archivo AndroidManifest.xml . Limitará su orientación al retrato.

Android: screenOrientation = "retrato"

Ejemplo:

  <activity android:name="com.example.demo_spinner.MainActivity" android:label="@string/app_name" android:screenOrientation="portrait" > </activity> 

Además, según el comentario de Eduard Luca a continuación, también puede usar screenOrientation="sensorPortrait" si desea habilitar la rotación en 180 grados.

Tienes que añadir la android:screenOrientation="portrait" en tu AndroidManifest.xml . Esto debe hacerse en la etiqueta <activity> .

Además, la guía para desarrolladores de Android indica que:

[…] también debe declarar explícitamente que su aplicación requiere orientación vertical o horizontal con el elemento. Por ejemplo, <uses-feature android:name="android.hardware.screen.portrait" /> .

Puedo ver que has aceptado una respuesta que no resuelve por completo tu problema:

 android:screenOrientation="portrait" 

Esto forzará a que tu aplicación sea retratada tanto en teléfonos como en tablets.

Puede hacer que la aplicación se vea forzada en la orientación "preferida" del dispositivo

 android:screenOrientation="nosensor" 

Esto llevará a forzar su aplicación a retratar en la mayoría de los teléfonos celulares y el paisaje en las tabletas. Hay muchos teléfonos con teclados que fueron diseñados para el modo de paisaje. Obligar a tu aplicación a retratarla puede hacerla casi inutilizable en tales dispositivos. Android también está migrando recientemente a otros tipos de dispositivos. Lo mejor es dejar que el dispositivo elija la orientación preferida.

Podría ser .. usted tiene que identificarlo es tablet o teléfono por programación …

 if(isTablet) { setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); }else { setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); } 
 <activity android:name=".yourActivity" android:screenOrientation="portrait" ... /> 

Añadir a la actividad principal y añadir

 android:configChanges="keyboardHidden" 

Para evitar que el programa cambie de modo cuando se llama al teclado.

Establezca la orientación de la pantalla en vertical en el archivo de manifiesto bajo la etiqueta de actividad.

  • ¿Cómo hacer que la aplicación admita la vista emergente de Samsung?
  • Cómo compilar código de ejemplo
  • ¿Hay alguna manera de mostrar una excepción personalizada en una alerta en Android?
  • Cómo mantener la vista actual en ViewFlipper al cambiar la orientación
  • Android: ¿Cómo puedo cambiar la altura de un ProgressBar?
  • La mejor manera de actualizar TextView, cada minuto, en el minuto
  • Android: Creación de un diseño principal y ampliación para mantener un aspecto idéntico en todas las actividades de la aplicación
  • Biblioteca de interfaz de usuario de validación de formularios de Android
  • OnKeyDown no siempre se llama en la aplicación para Android
  • Diseño de interfaz de usuario de Android
  • ¿Por qué se bloquea el Cajón de navegación de Android? (Recreado en la aplicación oficial de demostración)
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.