German im listview kein Text zu sehen

fraureuther1

Member
Licensed User
Longtime User
ich habe ein listview wie im Beispiel erzeugt. Es wird aber kein Text angezeigt. Was mache ich falsch?

MfG

Uhland
 

Attachments

  • pcr1000.zip
    12.5 KB · Views: 183

klaus

Expert
Licensed User
Longtime User
Du musst diesen Code:
B4X:
If FirstTime Then
    serial1.Initialize("Serial1")
    timer1.Initialize("Timer1", 200)
    ListView1.Initialize("ListView1")
    ListView1.SingleLineLayout.ItemHeight = 100dip
    ListView1.SingleLineLayout.Label.TextSize = 20
    ListView1.SingleLineLayout.Label.TextColor = Colors.Blue
    ListView1.SingleLineLayout.Label.Gravity = Gravity.CENTER
    For i = 1 To 300
        ListView1.AddSingleLine("Item #" & i)
    Next
End If

durch diesen ersetzen:
B4X:
If FirstTime Then
    serial1.Initialize("Serial1")
    timer1.Initialize("Timer1", 200)
End If

ListView1.SingleLineLayout.ItemHeight = 100dip
ListView1.SingleLineLayout.Label.TextSize = 20
ListView1.SingleLineLayout.Label.TextColor = Colors.Blue
ListView1.SingleLineLayout.Label.Gravity = Gravity.CENTER
For i = 1 To 300
    ListView1.AddSingleLine("Item #" & i)
Next

ListView1 ist eine Activity View die muss jedes mal definiert werden nicht nur wenn FirstTime = True ist !
Je nachdem Hintergrund musst Du vieleicht auch die Farbe des Labels bestimmen ListView1.SingleLineLayout.Label.Color = xxx

Da ListView1 im Designer erstellt wurde darf sie nicht noch einmal initialisieren zu werden.
Das heisset, diese Zeile ListView1.Initialize("ListView1") muss raus.
 

DonManfred

Expert
Licensed User
Longtime User
Listview ist Teil deines Layout und muss bzw darf(!) daher nicht initialisiert werden.

B4X:
    If FirstTime Then
        serial1.Initialize("Serial1")
        timer1.Initialize("Timer1", 200)
    End If
    ListView1.SingleLineLayout.ItemHeight = 100dip
    ListView1.SingleLineLayout.Label.TextSize = 20
    ListView1.SingleLineLayout.Label.TextColor = Colors.Blue
    ListView1.SingleLineLayout.Label.Gravity = Gravity.CENTER
    For i = 1 To 300
        ListView1.AddSingleLine("Item #" & i)
    Next
 
Top