|   FOROS      |     Tutoriales    |     KIO4 |      
   Inicio B4A (Basic4Android) App inventor 2 Arduino
   Elastix - VoIP Cosas de Windows Webs interesantes  Telecomunicaciones

 


Nuevo concurso para España, Argentina, Brasil, Chile, Colombia, Ecuador, México, Perú y Portugal.

Nueva sección en esta web: Elastix - VoIP

¿Qué es esto?

- Monta un servidor telefónico en tu ordenador para poderte comunicar mediante tu móvil con otros móviles que estén en tu red Wifi. Parecido a Skipe o Whatsapp-teléfono, pero en este caso tú controlas al servidor.

- Si sabes abrir puertos del router, también puedes comunicarte con tu móvil de una red Wifi a teléfonos de otra red Wifi.

- También puedes comunicarte con teléfonos "normales", pero para eso necesitas un dispositivo que vale unos 60 €.

- Es muy recomendable aprender el funcionamiento de este servidor telefónico Asterisk-Elastix.

 Elastix - VoIP

 

B4A en español - Juan Antonio Villalpando
(BASIC4Android)

-- Tutorial de B4A --

Volver al índice del tutorial                    Return to index tutorial

____________________________

Basic4Android.

28.- Dos Activyty.

Tutoriales. Dos Activity

Presentación

Bajar Activity_2.zip

- En un apartado anterior vimos cómo podemos poner varios paneles para que actuen como distintos formularios de Visual Basic. Ese efecto también lo podemos conseguir estableciendo varios Activity. Los Activity son como los Form de Visual Basic.

- Vamos a ver un ejemplo que muestra los tutoriales del sitio oficial de Basic4Android.

Creación de los layout y los Activity


Bajar Activity_2.zip

- Creamos una carpeta llamada Activity_dos y dentro el archivo activity_dos.b4a

- Vamos al Designer y creamos un Button1 y una Label1, lo guardamos con el nombre de layout

 

- Vamos a File / New y creamos un ListView1, guardamos este Designer con el nombre 2

Es decir, hemos creado dos layout, uno se llama layout y el otro 2.

 

 

 

 

- Cuando entramos en el programa se nos creó el Activity llamado Main, el principal.

Ahora vamos a crear otro Activity llamado Activity2.

Para ello vamos a Proyect / Add New Module / Activity Module

y creamos el Activity2

- Aquí tenemos los dos Activity: el Main y el Activity2.

- Tenemos dos layout (Layout y 2) y dos Activity (Main y Activity2).

En este programa se trata de ver como una variable Global llamada result, puede pasar de un Activity a otro.

Código del programa en Basic4Android

' En el Main escribimos el siguente código.

' Carga el Layout perteneciente al Main.
' Si pulsamos el Button1 vamos al Activity2              StartActivity(Activity2)

' Si venimos del Activity2, se presenta en el Label1 el result del Activity2          Activity2.result

 

' Juan Antonio Villalpando
' juana1991@yahoo.com

Sub Process_Globals

End Sub

Sub Globals
Dim Label1 As Label
Dim Button1 As Button
End Sub

Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("layout")
End Sub

Sub Activity_Resume
If Activity2.result.Length > 0 Then
Label1.Text = "You have chosen: " & Activity2.result
Else
Label1.Text = "Please press on the button and choose an item."
End If
End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

Sub Button1_Click
StartActivity(Activity2)
End Sub

*********************************************************************

' En el Activity2 escribiremos:

' Declaramos una variable Global llamada results que se pueda utilicar en el Main y en el Activity2

' Carga el layout del Activity2 llamado 2

' Cuando elegimos un elemento del Listview1, su Value se asigna a la variable result y vamos al Main

Sub Process_Globals

Dim
result As String result = "" End Sub
Sub Globals Dim ListView1 As ListView End Sub
Sub Activity_Create(FirstTime As Boolean) Activity.LoadLayout("2") For i = 1 To 100 ListView1.AddSingleLine("Item #" & i) Next End Sub
Sub Activity_Resume End Sub
Sub Activity_Pause (UserClosed As Boolean) End Sub
Sub ListView1_ItemClick (Position As Int, Value As Object) result = Value 'store the value in the process global object. StartActivity(Main) 'show the main activity again End Sub

' El Activity_Create se ejecuta cuando arranca el programa, en nuestro caso se carga el Layout

' El Activity_Resume se ejecuta cuando regresamos al Activity después de haber ido al Activity2


___________________

En este tutorial de los Foros se pueden ver otra formas de trabajar con varios Paneles y Activity

http://www.b4x.com/android/forum/threads/different-examples-with-2-layouts.8416/#post47102

En resumen se propones varias formas:

_____________________________________________
1 Activity, 1 Layout y 2 Paneles.
(ejemplo)
Los Views se ponen el su Panel correspondiente.
Para que salga un Panel u otro lo desocultamos o lo ocultamos.
Todo el código está en el Activity Main.

Sub Button1_Click
Panel1.Visible= False 
Panel2.Visible= True
End Sub 
 
Sub Button2_Click
Panel1.Visible= True 
Panel2.Visible= False 
End Sub 
_____________________________________________
1 Activity, 2 Layout

Los Views se ponen en su Layout correspondiente.
Para que salga un Layout o el otro borramos los Views correspondientes a ese Layout, mediante la subrutina BorrarViews.
Todo el código está en el Activity Main.
(En los distintos Layout los Views deber tener nombres distintos Label1, Label2, Label3...)
 
Sub Button1_Click 
' BorrarViews 
Activity.RemoveAllViews
Activity.LoadLayout( "Layout1" ) 
End Sub 
 
Sub Button2_Click 
' BorrarViews 
Activity.RemoveAllViews
Activity.LoadLayout( "Layout2" ) 
End Sub 
 
Sub BorrarViews 
DimAs Int 
 
For i = Activity.NumberOfViews- 1 To 0 Step - 1 
Activity.RemoveViewAt(i) 
Next 
End Sub 



o mejor


Activity.RemoveAllViews
 

_____________________________________________
2 Activity y 1 Layout en cada una.
(es el ejemplo de esta página)

Cada Activity tiene su Layout correspondiente.
(En los distintos Layout los Views deber tener nombres distintos Label1, Label2, Label3...)
Cada Activity tienes su código.
Para crea un nuevo Activity vamos a: Project / Add New Module / Activity Module, le damos un nombro por ejemplo: elotroactivity

Para pasar de un Activity a otro, en el primer Activity ponemos...

Sub Button1_Click 
StartActivity (elotroactivity) 
End Sub 
 
y en el otro Activity ponemos...
 
Sub Button2_Click 
StartActivity (Main) 
End Sub 

Las variables comunes se establecen en Process Globals...

Sub Process_Globals
Dim
result As String
result = ""
End
Sub

_____________________

Otra posibilidad es utilizar paneles deslizantes con...HorizontalScrollView (ver el tutorial)

________________________________

Si quieres que este tutorial se mantenga y lo actualice con más programas, escríbeme un correo a Juan Antonio: juana1991@yahoo.com

- Mi correo:
juana1991@yahoo.com
- KIO4.COM - Política de cookies. Textos e imágenes propiedad del autor:
© Juan A. Villalpando
No se permite la copia de información ni imágenes.
Usamos cookies propias y de terceros que entre otras cosas recogen datos sobre sus hábitos de navegación y realizan análisis de uso de nuestro sitio.
Si continúa navegando consideramos que acepta su uso. Acepto    Más información