Ich habe vor kurzem ein neues ListView-Objekt für eine Android-Anwendung erstellt, aber ich stoße auf einige Fehler. Wenn ich versuche, einen einfachen Adapter zu verwenden, um einen Artikel zu erstellen, der einen Unterpunkt in meiner Liste enthält, überlappt das neueste erstellte Artikel die anderen. Ich verwende eine Liste von Karten, um die Elemente zu erstellen.Android ListView Subitems
Wenn ich beispielsweise ein Element zu meiner Map-Liste hinzufüge, das "1" mit einem Unterpunkt anzeigt, der "A1" anzeigt, werden der Artikel und die Unterelemente angezeigt. Wenn ich jedoch ein neues Element zu meiner Map-Liste mit dem Namen "2" mit einem Unterpunkt "B2" hinzufüge, werden die "1" und "A1" durch "2" und "B2" ersetzt. Es gibt noch zwei Punkte auf der Listview sein wird, aber einer von ihnen ist leer und der andere ist „2“ und „B2“
Hier ist mein Code:
List<Map<String, String>> data = new ArrayList<Map<String, String>>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ListView lv = (ListView)findViewById(R.id.listView1);
Map<String, String> datum = new HashMap<String, String>();
datum.put("RouterName", "Test1");
datum.put("RouterIP", "SubTest1");
data.add(datum);
Map<String, String> datum2 = new HashMap<String, String>();
datum.put("RouterName", "Test2");
datum.put("RouterIP", "SubTest2");
data.add(datum2);
SimpleAdapter adapter = new SimpleAdapter(this, data, android.R.layout.simple_list_item_2, new String[] {"RouterName", "RouterIP"}, new int[] {android.R.id.text1, android.R.id.text2});
lv.setAdapter(adapter);
}
den Listentyp ändern, wird nicht arbeiten, weil der Simple Adapter speziell eine Map List verwendet.
'Datum2' wird in diesem Code nicht verwendet ... ?? – txtechhelp
@txtechelp, Das war schlechtes Kopieren von meiner Seite ... Ich habe es irgendwie vermasselt, den Code von meinem Editor zu kopieren. –
make benutzerdefinierte adapter von jedem Wert Objekt (VO) -Klasse, die Ihre zwei String enthält bedeutet TextView. –