Spanish [SOLUCIONADO] Modificar aspectos del Activity desde una clase

vbmundo

Well-Known Member
Licensed User
Hola,

Quiero saber si puedo crear una clase que reciba como parámetro el Activity y que desde la clase se puedan modificar cuestiones del Aspecto de la misma.

Algo así como el famoso ByRef..

Saludos
 

bgsoft

Well-Known Member
Licensed User
Longtime User
Hola Pablo

Puedes hacerlo asi:

B4X:
' en el activity
Sub Globals
Private Mimodulo As ModulodeClase ' El nombre que le des al módulo de clase
Dim BtnColor as Button
Dim Etiqueta as Label
' ........................
' ........................
' ........................

Sub Activity_Create(FirstTime As Boolean)

  Etiqueta.Inicialize ("")
  BtnColor.Inicialize ("BtnColor")

  Mimodulo.Initialize(Me, panel1, parametrox, Directorio ) ' lo que necesites

  ' ........................
  ' ........................

Sub BtnColor_Click
   ' cambiar color al activity
   Mimodulo.CambiarColorActivity (Colors.Blue)
End Sub




' --------------------------- en el módulo de clase ----------------------
Private Sub Class_Globals
  Private ActualActivity As Object
  Private ActualActivity As Activity ' tambien puedes utilizar este método
  Private MiPanel as Panel
  Public CarpetaAplicacion as string
  Private MiParametro as int
  private Cabecera1 as label
' ........................
' ........................
' ........................

Public Sub Initialize(MiActivity As Object, Panel1 as Panel , Parametro as int, Carpeta As String, TextoCabecera as label)

' tambien puedes poner que te devuelva si se ha inicializado correctamente
Public Sub Initialize(MiActivity As Activity, Panel1 as Panel , Parametro as int, Carpeta As String, TextoCabecera as label)  as Boolean

ActualActivity = Miactivity
MiPanel = Panel1
CarpetaAplicacion = Carpeta
MiParametro = Parametro
Cabecera1 = TextoCabecera

cabecera1.text ="Inicializado módulo"

' si por ejemplo has empleado que te devuelva un valor, puedes salir asi:
Return True ' o lo que sea a nivel de lo que inicialices

' ........................
' ........................
' ........................

Public Sub CambiarColorActivity (color as int)
  ActualActivity.Color = color
End Sub


Saludos
 
Last edited:

bgsoft

Well-Known Member
Licensed User
Longtime User
Hola Pablo, cuando te respondan y te resuelvan la pregunta, por favor, cambia el nombre del post y añadele [SOLUCIONADO] , de esta forma hacemos el foro mejor y mas rapido por que vemos de un golpe si se dió la solución.

Gracias


Saludos
 

vbmundo

Well-Known Member
Licensed User
Hola Jesus.

Estoy buscando la forma, proque me deja editar el primer POST, pero no el título... o no veo como.

Si me indicas como lo hago sin problemas.

Saludos
 

bgsoft

Well-Known Member
Licensed User
Longtime User
Hola Pablo

Arriba a la derecha de la pantalla tienes un Thread Tools , pulsas y tienes un Edit Title

Saludos
 

bgsoft

Well-Known Member
Licensed User
Longtime User
Hola

Gracias, ahora haz lo mismo en el resto de post solucionados

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