Volevo lavorare su un progetto che ho in testa: una specie di cartellone (dentro una scrollview 2d)con delle celle disposte a matrice, e dentro ognuna cella una situazione complessa (tipicamente imageview, label spinner e edittext.
Ho realizzato un primo prototipo semplificato.
Questo
Ho definito due layout: main e cella.
main contiene tre panel, cella il contenuto di ogni cella.
All'inizio carico main nel layout principale e cella in ognuno dei tre panel e provvedo a "generate members" per entrambe.
Questo è il codice:
tipologia ad esempio denota lo spinner, quando lo uso agisce solo sull'ultimo pannello caricato.
Se voglio caricare lo spinner del pannello centrale uso:
s = centro.GetView(1)
s.AddAll(Array As String("aprile", "maggio", "giugno"))
c'è la possibilità di interagire in modo simbolico?
ad esempio con una notazione tipo
centro.tipologia.addall( ...
un saluto a tutti
fabio milano
Ho realizzato un primo prototipo semplificato.
Questo
Ho definito due layout: main e cella.
main contiene tre panel, cella il contenuto di ogni cella.
All'inizio carico main nel layout principale e cella in ognuno dei tre panel e provvedo a "generate members" per entrambe.
Questo è il codice:
B4X:
Sub Globals
'These global variables will be redeclared each time the activity is created.
'These variables can only be accessed from this module.
'view statiche definite nel layout main
Private alto As Panel
Private basso As Panel
Private centro As Panel
'view statiche definite nel layout cella
Private figura As ImageView
Private tipologia As Spinner
Private titolo As Label
End Sub
Sub Activity_Create(FirstTime As Boolean)
Dim s As Spinner
'Do not forget to load the layout file created with the visual designer. For example:
Activity.LoadLayout("main")
alto.LoadLayout("cella")
centro.LoadLayout("cella")
basso.LoadLayout("cella")
tipologia.AddAll(Array As String("gennaio", "febbraio", "marzo"))
s = centro.GetView(1)
s.AddAll(Array As String("aprile", "maggio", "giugno"))
End Sub
tipologia ad esempio denota lo spinner, quando lo uso agisce solo sull'ultimo pannello caricato.
Se voglio caricare lo spinner del pannello centrale uso:
s = centro.GetView(1)
s.AddAll(Array As String("aprile", "maggio", "giugno"))
c'è la possibilità di interagire in modo simbolico?
ad esempio con una notazione tipo
centro.tipologia.addall( ...
un saluto a tutti
fabio milano