Descargas, guías, trucos, gameplays...

lunes, 5 de agosto de 2013

Basic4android - 05 Aplicación multi Pantalla/Layout






Muchas veces no será suficiente una sola pantalla para todo el contenido de nuestra aplicación y sera necesario hacer uso de varios Layout. En el siguiente código explicare como hacer facilmente el llamado de uno a otro Layout.

Para cada pantalla se debe crear un Module Activity y un Layout. Para cambiar de pantalla se inicia el Module Activity y este al iniciar abre y muestra el Layout correspondiente, que es la pantalla que tendrá el contenido y los controles.

Crearemos una aplicación con tres pantallas:
  • Main
  • Pantalla1
  • Pantalla2


Código del Module Main:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#Region  Project Attributes 
 #ApplicationLabel: B4A Example
 #VersionCode: 1
 #VersionName: 
 'SupportedOrientations possible values: unspecified, landscape or portrait.
 #SupportedOrientations: unspecified
 #CanInstallToExternalStorage: False
#End Region

#Region  Activity Attributes 
 #FullScreen: False
 #IncludeTitle: True
#End Region

Sub Process_Globals
End Sub

Sub Globals
End Sub

Sub Activity_Create(FirstTime As Boolean)
 Activity.LoadLayout("main") 'Abre el Layout main
End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub



Sub Button1_Click
 StartActivity("Pantalla1") 'Inicia el Modulo Pantalla1. Este al iniciar abre el Layout Pantalla1
End Sub

Sub Button2_Click
 StartActivity("Pantalla2") 'Inicia el Modulo Pantalla2. Este al iniciar abre el Layout Pantalla2
End Sub



Código del Module Pantalla1:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#Region  Activity Attributes 
 #FullScreen: False
 #IncludeTitle: True
#End Region

Sub Process_Globals
 'These global variables will be declared once when the application starts.
 'These variables can be accessed from all modules.

End Sub

Sub Globals
 'These global variables will be redeclared each time the activity is created.
 'These variables can only be accessed from this module.

End Sub

Sub Activity_Create(FirstTime As Boolean)
 Activity.LoadLayout("Pantalla1") 'Abre el Layout Pantalla1
End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

Sub Button1_Click
 StartActivity("Main") 'Inicia el Modulo Main. Este al iniciar abre el Layout Main
End Sub

Sub Button2_Click
 StartActivity("Pantalla2") 'Inicia el Modulo Pantalla2. Este al iniciar abre el Layout Pantalla2
End Sub



Código del Module Pantalla2:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#Region  Activity Attributes 
 #FullScreen: False
 #IncludeTitle: True
#End Region

Sub Process_Globals
 'These global variables will be declared once when the application starts.
 'These variables can be accessed from all modules.

End Sub

Sub Globals
 'These global variables will be redeclared each time the activity is created.
 'These variables can only be accessed from this module.

End Sub

Sub Activity_Create(FirstTime As Boolean)
 Activity.LoadLayout("Pantalla2") 'Abre el Layout Pantalla2
End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

Sub Button1_Click
 StartActivity("Main") 'Inicia el Modulo Main. Este al iniciar abre el Layout Main
End Sub

Sub Button2_Click
 StartActivity("Pantalla1") 'Inicia el Modulo Pantalla1. Este al iniciar abre el Layout Pantalla1
End Sub



En el vídeo pueden ver la construcción de la aplicación:



y la aplicación funcionando en el siguiente vídeo:











6 comentarios:

  1. Muchas gracias por la breve pero sustancionsa explicacion ya que no hay muchos tutos en internet sobre basic4 android y para los que empezamos esta perfecto muchas gracias nuevamente (h)

    ResponderEliminar
  2. porque no se pueden descargar los ejemplosss... puedes solucionarlo porfa please......

    ResponderEliminar
    Respuestas
    1. Listo. Creo que ya están corregidos todos los enlaces.

      Eliminar
  3. como evito el reinicio de las variabes al cambiar entre layouts

    ResponderEliminar