erhalten Sie den Wert aus hashmap und in listview hinzufügen
Ich habe eine HashMap
HashMap<String, Integer> map = new HashMap<String, Integer>();
in der Karte gibt es einige Wert. Ich möchte den Wert ein und fügen Sie es in die Listenansicht. Der Wert, der in der Karte sind
{Absicht { cmp=Bluetooth/300 }=300, Absicht { cmp=Audio/400 }=400,
Absicht { cmp=Video/500 }=500, Absicht { cmp=Anzeige/100 }=100, Absicht {
cmp=WiFi/200 }=200}
Gibt es zwei textview in der listview.
Und ich möchte die Anzeige in der listview als
Anzeige 100
WiFi-200
Bluetooth-300.
Ich jetzt öffentlich meine Adapter-Klasse, die hilfreich sein für Sie...
private class NewAdapter extends BaseAdapter {
public NewAdapter(IntentTestingActivity intentTestingActivity,
HashMap<String, Integer> map) {
}
@Override
public int getCount() {
Log.d(TAG, "Map size is: " + map.size());
return map.size();
}
@Override
public Object getItem(int arg0) {
return null;
}
@Override
public long getItemId(int arg0) {
return 0;
}
@Override
public View getView(int position, View view, ViewGroup parent) {
View v = view;
if (v == null) {
LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.class_name, null);
}
TextView className = (TextView) v.findViewById(R.id.name);
TextView tagName = (TextView) v.findViewById(R.id.tag_name);
Integer key_name;
key_name = map.get(name);
Log.d(TAG, "Complete map is: " + map.toString());
//String tag = map.get(tagName).toString();
//Integer name = map.get(className);
String keyName;
keyName = map.toString();
Log.d(TAG, "KeyName is: " + map.get(tag));
for (int i = 0; i < map.size(); ++i)
Log.d(TAG, "Tag is: " + tag + " and Name is: " + name + " and Intent is: "+intent);
HashMap<String, Integer> hashmap = map;
for (Entry<String, Integer> e : hashmap.entrySet()) {
String key = e.getKey();
int value = e.getValue();
Set<String>keyname = map.keySet();
Log.d(TAG, "Key: " + key+ " Value: "+value);
}
className.setText(name.toString());
// tagName.setText(keyName);
return v;
}
}
Wo name ist nur ein String, in dem die alle keyValue, wie Display -, Video ect.
Danke im Voraus...
- Ich verstehe nicht, all diese +1 und Favoriten? Bin ich etwas fehlt :$?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie zum erstellen eines POJO-Klasse mit getter-setter und legen Sie die Schlüssel-und Wert-Klasse.
Und dann setzen Sie diese
list
zu Ihrem Adapter-Klasse. Dies ist eine einfache Möglichkeit.map.get(name);
aus immer, wo Siename
?for loop
innerhalb der adapter-Klasse aufgerufen wird, werden für jede Liste ein Element, damit seine schlechten coding-standard, besser ist, zu tun, was ich Bestand darauf, und übergeben Sie einfach dielist
zu der adapter-Klasse.Erstellen Sie einen benutzerdefinierten Adapter, der verwendet Ihre HashMap und...
Scheint, wie Sie sind, zeigen beide Werte zusammen als einen einzigen string, so können Sie dies erreichen, indem Sie einfach so tut: