извлечение значений из массива и передача его в hashmap - PullRequest
0 голосов
/ 25 марта 2011

Я проанализировал данные из XML-файла и сохранил их в arraylist. И я хочу скопировать содержимое arraylist в hashmap.

 ArrayList<String> items=new ArrayList<String>();
        ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();
        HashMap<String, String> map = new HashMap<String, String>();

        try {
            XmlPullParser xpp=getResources().getXml(R.xml.call_record_request_structure);
            while (xpp.getEventType()!=XmlPullParser.END_DOCUMENT) {
            if (xpp.getEventType()==XmlPullParser.START_TAG) {
                String name=xpp.getName();
                String temp="productName";
                //items.add(name);
            if (name.equals(temp)) {
            String pro=xpp.nextText();
                items.add(pro);
                int count=items.size();
                for(int i=0;i<count;i++) {
                    map = new HashMap<String, String>();
                    map.put("product", items.get(i));
                    mylist.add(map);
                }
            }
            }
            xpp.next();
            }
            }
            catch (Throwable t) {
            Toast
            .makeText(this, "Request failed: "+t.toString(), 4000)
            .show();
            }
SimpleAdapter mHistory = new SimpleAdapter(this,mylist , R.layout.prodlist_supp,
                    new String[] {"product"},
                    new int[] {R.id.products});
        listview.setAdapter(mHistory);

но когда я запускаю код, он падает. Кто-нибудь может мне помочь

1 Ответ

0 голосов
/ 25 марта 2011

Попробуйте: добавьте карту после окончания цикла.

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

for(int i=0;i<count;i++) {

            map.put("product", items.get(i));

        }
mylist.add(map);

, если проблема не исчезнет, ​​покажите вашу трассировку стека.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...