Spanish gigante duda con spinners y sqllite

mvera

Active Member
Licensed User
Longtime User
hola tengo una gran duda de trabajar spiner cargados de una base de datos.

spiner(tipo):
-Carga de una bd y los pongo asi en el spinner
spinner_tipo.Add(TIPO)

Como en la bd cargo los valores de TIPO de la manera id_tipo y tipo , me gustaria ver la manera de que tome ese indice al seleccionar el valor del spinner para luego tomar ese valor y pasarlo para cargar a otro spinner llamado "subtipo"

espero me puedan orientar
 

EnriqueGonzalez

Well-Known Member
Licensed User
Longtime User
yo lo haria asi:

B4X:
    Dim s As Spinner
    s.Initialize("")
   
    Dim l As List
    l.Initialize
    s.Add("Sunday")
    l.Add(0)
   
    s.Add("Monday")
    l.Add(1)
   
    s.Tag = l
   
private Sub spinner_ItemClick (Position As Int, Value As Object)
    Dim s As Spinner = Sender
    Dim l As List = s.Tag
   
    Log(l.Get(Position))
End Sub
 

Descartex

Well-Known Member
Licensed User
Longtime User
Muy buenas:
Yo la asignación al spinner lo hago de la siguiente manera, teniendo en cuenta que spnGroup es el Spinner, MyDB es el objeto de la base de datos SQL.
B4X:
DBUtils.ExecuteSpinner(MyDB,"select GroupName from Groups",Null,0,spnGroup)
spnGroup.Tag=MyDB.ExecQuerySingleResult("Select GroupId from Groups where GroupName='"&spnGroup.SelectedItem&"'")

Luego, cuando se cambia el valor del spinner, hago lo siguiente:
B4X:
Sub spnGroup_ItemClick (Position As Int, Value As Object)
    Dim spin As Spinner
    spin=Sender
    spin.Tag=MyDB.ExecQuerySingleResult("Select GroupId from Groups where GroupName='"&Value&"'")
End Sub
Asi, en todo momento, tengo en la propiedad Tag del spinner el valor del Id del item seleccionado.
Espero que te haya ayudado.
Un saludo.
 

Descartex

Well-Known Member
Licensed User
Longtime User
Si te ha solucionado el problema, edita el encabezado y añadele [Solucionado].
Muchas gracias
 
Top