Establecer la orientación para sólo 1 fragmento en mi actividad, mientras que el resto está en el retrato
Mi aplicación debe estar en modo vertical, por lo que la configuro en el manifiesto mediante:
android:screenOrientation="portrait"
Pero recientemente he añadido otro fragmento (FragA) que sólo se ve y funciona 10x mejor en el paisaje. ¿Hay algo que puedo poner dentro de mi FragA para hacer sólo ese fragmento en el paisaje, mientras que la retención del resto de la aplicación en el retrato o haciendo esto debo agregar algo a mis otros fragmentos para mantenerlos retenidos como retrato?
- Resumen: Tome una foto utilizando Intención de la cámara y muestre la foto con la orientación correcta (funciona con todos los dispositivos)
- Android: orientación / rotación de la pantalla para la vista previa de la cámara
- La cámara android setDisplayOrientation (90) falla en diferentes dispositivos
- ¿Cómo no guardar el estado de la vista en Android?
- Bloquear / desbloquear la orientación
- Cambiar la orientación, perder todos los elementos de la lista
- Android: ancho y alto de la vista después del cambio de orientación
- Obtener orientación de la imagen de MediaStore.Images.Media.DATA
- Android Compass orientación en poco fiable (filtro de paso bajo)
- Cómo cambiar la orientación de bloqueo en Android?
- OnOrientationChanged () se llama cuando OrientationEventListener está deshabilitado
- ¿Calcula orientación relativa teniendo azimut, tono y rollo en android?
- Android: deshabilita temporalmente los cambios de orientación en una actividad
El atributo de orientación es por actividad, por lo que puede declarar la orientación sólo para la actividad que contiene el fragmento para que esté en el paisaje y el resto de las actividades se mantendrán como están.
Utilice la siguiente línea de código en el fragmento donde desea una orientación específica (en este caso, retrato).
getActivity().setRequestedOrientation( ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
Si desea tener una orientación en un fragmento, que se basa en la forma en que el usuario tiene su dispositivo, utilice la siguiente línea de código.
getActivity().setRequestedOrientation( ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
Esperanza, esto le dará la solución deseada.
En cada uno de sus fragmentos, establezca la orientación solicitada.
Documento de referencia: http://developer.android.com/reference/android/content/pm/ActivityInfo.html
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Fragment locked in portrait screen orientation getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); // Fragment locked in landscape screen orientation getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); // Fragment screen orientation normal both portait and landscape getActivity().setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED); }
- ¿Rellenar la base de datos de Android desde el archivo CSV?
- No se puede detectar Sony Xperia en Eclipse