Mirando el AndroidManifest.xml ( enlace ), en la línea 9:
<activity android:screenOrientation="landscape" android:configChanges="orientation|keyboardHidden" android:name="VncCanvasActivity">
Esta línea especifica el screenOrientation
paisaje, pero el autor va más allá al anular cualquier cambio de orientación de la pantalla configChanges="orientation|keyboardHidden"
. Esto apunta a una función anulada en VncCanvasActivity.java.
Si observa VncCanvasActivity, en la línea 109 se encuentra la función anulada:
@Override
public void onConfigurationChanged(Configuration newConfig) {
// ignore orientation/keyboard change
super.onConfigurationChanged(newConfig);
}
El autor específicamente puso un comentario para ignorar cualquier cambio de teclado u orientación.
Si desea cambiar esto, puede volver al archivo AndroidManifest.xml que se muestra arriba y cambiar la línea a:
<activity android:screenOrientation="sensor" android:name="VncCanvasActivity">
Esto debería cambiar el programa para cambiar de vertical a horizontal cuando el usuario gira el dispositivo.
Esto puede funcionar, pero puede estropear la apariencia de la GUI, dependiendo de cómo se creó el diseño. Tendrás que dar cuenta de eso. Además, dependiendo de cómo se codifiquen las actividades, puede observar que cuando se cambia la orientación de la pantalla, los valores que se completaron en cualquier cuadro de entrada desaparecen. Esto también puede tener que ser manejado.
configChanges
necesita exactamente el atributo? Parece funcionar en mi teléfono sin teclado sin él ... ¿En qué situaciones la orientación cambiará a vertical siscreenOrientation="landscape"
omite elconfigChanges
?