2

Ich muss mehrere lineare Fortschrittsbalken auf meiner Benutzeroberfläche anzeigen. Diese zeigen Wifi-Signalstärken an.Android; ist ein ListView der beste Ansatz um mehrere, unabhängige Fortschrittsbalken anzuzeigen?

Wenn Sie in einem bebauten Gebiet sind, werden Sie wahrscheinlich mehr als ein WiFi-Netzwerk erkennen, daher muss ich einen Fortschrittsbalken für jeden haben, der die Signalstärke anzeigt.

Meine ursprüngliche Idee war, diese in einer ListView mit dem WLAN-Namen und der Fortschrittsbalken darunter anzuzeigen.

Ist das ein vernünftiger Ansatz, oder gibt es eine bessere Methode, die ich mir ansehen sollte?

Antwort

0

ListView ist sowieso eine gute Wahl, aber es hat einige Nachteile, da ListView mit auswählbaren Elementen verwendet werden soll. In Ihrem Fall schlage ich vor, dass Sie keine Auswahl an Gegenständen benötigen.

Ich würde vorschlagen, einen anderen Ansatz zu verwenden: TableLayout verpackt in ScrollView mit dynamisch hinzugefügt TableRow s. In diesem Fall brauchen Sie keine unnötigen ListView 's Overhead

+0

Wenn ich sagen würde, dass ich auf ein Element "klicken muss" (um weitere Details anzuzeigen/einige Aktionen in diesem Netzwerk durchführen), würde dies ändern Dein Tipp? – Jimmy

+0

Sicher, das würde meinen Ratschlag ändern, denn in diesem Fall wäre die einzige Möglichkeit, mit Klicks umzugehen, das Abfangen von Ereignissen von jedem Gegenstand, was Schmerz ist. Aber wenn Klickaktionen kompliziert wären (wie das Anzeigen eines zusätzlichen Menüs oder so), wäre es besser, ohne ListView zu arbeiten. Zumindest mache ich das in meiner Anwendung, wo ich je nach Art des Gegenstandes anders reagieren muss. – barmaley

+0

Wenn Sie mehrere Klickziele innerhalb eines Listenelements haben, rufen Sie setItemsCanFocus (true) in der Liste auf und verwalten Sie den Fokus innerhalb der Objektansichten. Vergessen Sie nicht Tastatur/Trackball/dpad Navigation - Touch ist nicht der einzige Eingabemechanismus auf Android. :) – adamp