Cambiar la orientación sin llamada onCreate
Quiero cambiar el diseño sin llamar al método onCreate. También defino android: configChanges = "orientation | keyboardHidden" en mi actividad y no está llamando al método onCreate, pero el diseño no se ajusta adecuadamente en modo horizontal.
Mi aspecto actual aspecto como sigue.
Después de cambiar la orientación como paisaje se ve como sigue:
Pero en el paisaje quiero el siguiente resultado.
Hay alguna propiedad adyacente auto?
¿Cómo puedo hacerlo?
No hay ninguna propiedad de ajuste automático mientras la vista cambia de retrato a paisaje.
Para las imágenes que desea mostrar en modo horizontal
Cree un archivo filename.xml y diseñe su diseño para el modo horizontal. Dé nombre de archivo igual que el archivo xml anterior en la carpeta de diseño que está utilizando para la actividad.
Cree la carpeta en res / name como layout-land y luego guarde ese archivo filename.xml en la carpeta res / layout-land
Se llamará automáticamente res / layout-land / filename.xml cuando la orientación cambie de retrato a paisaje.
O también puede utilizar
@Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT) { //your code } else if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) { //your code } }
Vea esta documentación para manejar esto
http://developer.android.com/resources/articles/faster-screen-orientation-change.html
Puedes añadir android:configChanges="orientation"
a la etiqueta de actividad en AndroidManifest.xml. Intentalo.
Voy a asumir que estás usando un LinearLayout, porque no especificaste, pero hay una función en la clase LinearLayout llamada setOrientation () que debería arreglar esto. Tendrás que crear una instancia de tu diseño en tu archivo java (que ya hayas hecho) y luego crear un oyente de cambio de orientación o de cambio de tamaño en tu ventana. Después de eso, sólo cambia la orientación horizontal / vertical según la orientación de la pantalla.
Sólo pones este android: configChanges = "orientation | keyboardHidden" en tu tag de actividad en android manifest.it funciona.
Pon esto en tu hermano manifiesto.
android:configChanges="orientation|keyboardHidden|screenSize|uiMode"
Es resolver tu y mi problema: D