gpt4 book ai didi

android - 从 hashmap 获取值并添加到 listview

转载 作者:太空宇宙 更新时间:2023-11-03 13:34:19 25 4
gpt4 key购买 nike

我有一个哈希表

HashMap<String, Integer> map = new HashMap<String, Integer>();

map 中有一些值。我想一个一个地获取值并将其添加到 ListView 中。 map 中的值是

{Intent { cmp=Bluetooth/300 }=300, Intent { cmp=Audio/400 }=400, Intent { cmp=Video/500 }=500, Intent { cmp=Display/100 }=100, Intent { cmp=WiFi/200 }=200}

listview中有两个textview。我想在 ListView 中显示为

Display 100

WiFi 200

Bluetooth 300.

现在我公开我的 Adapter 类,这将对您有所帮助...

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;
}

}

其中 name 是一个字符串,其中包含所有 keyValue,例如 Display、Vedio 等。

提前致谢...

最佳答案

您可以使用 getter-setter 创建一个 POJO 类,并将键和值设置到该类。

        List<POJO> list = new ArrayList<POJO>();
Iterator<Entry<String, Integer>> iterator = map.entrySet().iterator();
Entry< String, Integer> entry;
while(iterator.hasNext()){
POJO obj = new POJO();
entry = iterator.next();
Log.d("Key Value",entry.getKey()+" "+entry.getValue());
obj.setKey(entry.getKey());
obj.setValue(entry.getValue());
list.add(obj);
}

然后将此 list 设置为您的 Adapter 类。这将是一个简单的方法。

关于android - 从 hashmap 获取值并添加到 listview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9125678/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com