ich habe mit folgendem Code mehrere Labels generiert.
B4X:
For TT=0 To 420 Step 105
For L=10 To 412 Step 67
For T=1+TT To 90+TT Step 18
Dim lbl As Label
lbl.Initialize("lbl")
lbl.Color=Colors.Green
lbl.TextColor=Colors.Black
lbl.TextSize=11
lbl.Text = L & "." & T
Panel1.AddView(lbl,L,T,60,19)
Next
Next
Next
Nun möchte ich aber jedes Label individuell mit Text versehen. Aber wie kann ich die erstellten Labels jetzt einzeln ansprechen?
Um die Label direkt ansprechen zu können kann man folgendes machen:
B4X:
Dim lbl(n) as Label
dim ctr as int
ctr = 0
' n ist Anzahl der Label die du brauchst
' dann die innere Schleife
For T=1+TT To 90+TT Step 18
' Dim lbl As Label
ctr=ctr+1
lbl(ctr).Initialize("lbl")
lbl(ctr).Color=Colors.Green
lbl(ctr).TextColor=Colors.Black
lbl(ctr).TextSize=11
lbl(ctr).Text = L & "." & T
lbl(ctr).tag = ctr ' um den Label im Event "lbl" zu identifizieren
Panel1.AddView(lbl(ctr),L,T,60,19)
Next
So hatte ich mir das auch gedacht aber ich bekomme eine Fehlermeldung. Der Compiler läuft ohne Meldung durch aber im Emulator bekomme ich dann: java.lang.RuntimeException: Object should first be initialized (Label).
Sub Activity_Create(FirstTime As Boolean)
Dim lbl(175) As Label
Dim i As Int
i=1
For TT=0 To 420 Step 105
For L=9 To 411 Step 67
For T=TT To 89+TT Step 18
lbl(i).Initialize("lbl")
lbl(i).Color=Colors.Green
lbl(i).TextColor=Colors.Black
lbl(i).TextSize=11
lbl(i).Text= i
i=i+1
Panel1.AddView(lbl(i),L,T,60,19)
Next
Next
Next
End Sub