创建自定义hashmapadapter

时间:2012-04-04 07:35:24

标签: android

如果我有一个包含以下内容的hashmap:

Hashmap contains (String, String)

如何实例化自定义适配器?自定义适配器应扩展baseadapter。 我需要结合键和值,使它看起来像“KEY + VALUE”,“KEY + VALUE”......并将其分配给数组VALUES。当我实例化我的自定义权限时,稍后会使用数组VALUES。

实例化应该如下所示:

MyCustomAdapter adapter = new MyCustomAdapter(this, android.R.layout.simple_list_item_1, VALUES);   
setListAdapter(adapter)

我迷失在这里,所以代码将是一个很大的帮助。

感谢 格雷厄姆

以下列表将名为items的字符串数组用作其数据源。

public ArrayList<String> myList = new ArrayList<String>(Arrays.asList(items)); 

但是item是一个字符串数组,我想停止使用,而是开始使用我的hashmap中的连接键+值对

因此,不会向用户显示项目列表,而是会显示从hashmap hm中获取的键+值对列表

1 个答案:

答案 0 :(得分:1)

我认为您不需要使用自定义适配器。您的布局非常简单,您只需要一个textView,因此您可以使用ArrayAdapter。 举个例子,你可以这样做:

HashMap<Integer,String>hm=new HashMap<Integer,String>();
Vector<String>elements=new Vector<String>();
 for(int i=0; i<=10;i){      
      hm.put(i,("num"+i));
    }
    for (Entry<Integer, String> e : hm.entrySet()) {
        String newString=e.toString();
        elements.add(newString);
    }
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, elements);
    list.setAdapter(adapter);