Spanish [SOLUCIONADO] Como evitar el PAUSE al girar el movil

vbmundo

Well-Known Member
Licensed User
Hola,

me preocupa esto de que si el usuario esta corriendo la APP y en medio del proceso rota el movil Android termine pausando la misma..

Ante esto quiero hacer 2 preguntas concretas..

1. Hay manera de evitar esto ? es decir, forzar a que la aplicación funcione solo ante 1 posición determinada... porque si tu formulario tiene los controles distribuidos de manera Portrail, no tiene sentido reacomodarlos (para que se vean mal) en un Landscope.. como forzar para que SI o SI se ubique el movil de una forma y que el proceso no se vea interrumpido ante el cambio de posición.


2. Que código se debe incluir en PAUSE para que todo continue su proceso sin problemas (en caso de que el punto 1 no tenga solución).


Saludos y Gracias !!
 

rscheel

Well-Known Member
Licensed User
Longtime User
Estimado,

Tu primera pregunta lo solucionas colocando #SupportedOrientations: portrait

B4X:
#Region  Project Attributes
    #ApplicationLabel: Ejemplo
    #VersionCode: 1
    #VersionName: 1
    'SupportedOrientations possible values: unspecified, landscape or portrait.
    #SupportedOrientations: portrait
    #CanInstallToExternalStorage: False
#End Region

Tu segunda pregunta lo solucionas utilizando el modulo StateManager.

Espero te sirva .
 

vbmundo

Well-Known Member
Licensed User

Amigo,

Gracias por responder.

Lo que quiero es limitar a un Activity no a toda la aplicación... en la misma aplicación tengo un Activity que SI o SI debe mostrarse en LANDSCOPE..

Se puede limitar esto por cada Activity ?

y segundo... tienes algun código ejemplo de una buena práctica con el evento PAUSE ?

Gracias
 

bgsoft

Well-Known Member
Licensed User
Longtime User
Hola Pablo

Lo que quiero es limitar a un Activity no a toda la aplicación... en la misma aplicación tengo un Activity que SI o SI debe mostrarse en LANDSCOPE..

Se puede limitar esto por cada Activity ?

Si no quieres tocar el manifest, puedes bloquear (por ejemplo) en Sub Activity_Create(FirstTime As Boolean) de la pantalla que quieras, pero eso si, cuando salgas, en el Sub Activity_Pause (UserClosed As Boolean) cuando el UserClosed = True desbloqueala.

B4X:
Sub Globals
Dim Phone1 As Phone  ' libreria phone
  ' ......................
  ' ......................


Phone1.SetScreenOrientation(0) ' la bloquea en horizontal

Phone1.SetScreenOrientation(1) ' la bloquea en vertical       

Phone1.SetScreenOrientation(-1) ' desbloquea las dos opciones anteriores

Saludos
 
Cookies are required to use this site. You must accept them to continue using the site. Learn more…