Android列表视图将删除的值插入相同的位置

时间:2016-09-03 13:59:51

标签: java android listview listviewitem

我在列表视图中工作。在其中,有两个列表,如果我从基本列表中选择一个值,它将添加到子列表并从基本列表中删除该项,所有都工作正常。我的查询是从子列表中删除列表项,它将重新添加到基本列表

            contacts = jsonObj.getJSONArray(TAG_PRODUCTLIST);
            for (int i = 0; i < contacts.length(); i++)
            {
                JSONObject c = contacts.getJSONObject(i);
                Object id = c.get(TAG_CATID);
                Object em = c.get(TAG_CAT);
                contact1 = new HashMap<>();
                contact1.put(TAG_CATID, id);
                contact1.put(TAG_CAT, em);
                JSONArray productss = c.getJSONArray(TAG_PRODUCT);

                worldpopulationlist.add(new QuoteSectionItem(em.toString()));//listview section


                for (int j = 0; j < productss.length(); j++)
                {
                    JSONObject d = productss.getJSONObject(j);
                    Object pid = d.get(TAG_PID);
                    Object price = d.get(TAG_PRICE);
                    Object pn = d.get(TAG_PNAME);
                    contact = new HashMap<>();

                    contact.put(TAG_PID, pid);
                    contact.put(TAG_PRICE, price);
                    contact.put(TAG_PNAME, pn);
                    contact.put(TAG_PDESC, pn);
                    Quote_Products worldpopulation = new Quote_Products(id,em,pid,pn,price);//listview item

                    worldpopulationlist.add(worldpopulation);

                } }

这是基础列表创建,我创建子列表,如`SparseBooleanArray selected = listviewadapter.getSelectedIds();

                for (int i = (selected.size() - 1); i >= 0; i--)
                {
                    if (selected.valueAt(i))

                    {

                    QuoteItem selectedI = listviewadapter.getItem(selected.keyAt(i));

                    Quote_Products selecteditem = (Quote_Products) selectedI;

                    System.out.println("Selected Items : "+selecteditem.getCountry());
                    System.out.println("Selected Items : "+selecteditem.getRank());
                    System.out.println("Selected Items : "+selecteditem.getPopulation());


                        System.out.println("Products:"+product);
                        productList.add(product);
                        Quote_SelectedProducts worldpopulation1 = new Quote_SelectedProducts(
                                selecteditem.getCidid(),
                                selecteditem.getCname(),
                                selecteditem.getRank(),
                                selecteditem.getCountry(),
                                selecteditem.getPopulation());
                        worldpopulationlist1.add(worldpopulation1);
                        listviewadapter.remove(selecteditem);


                    }

                }

` 在成功完成此操作之后,我需要如何在删除值表单子列表

后重新插入列表值
                    SparseBooleanArray selected = listviewadapter1.getSelectedIds();

                    for (int i = (selected.size() - 1); i >= 0; i--)
                    {
                        if (selected.valueAt(i))
                        {
                            Quote_SelectedProducts selecteditem = listviewadapter1.getItem(selected.keyAt(i));
                            listviewadapter1.remove(selecteditem);

                            System.out.println("Delete after ignore "+selecteditem.getCidid());
                            System.out.println("Delete after ignore "+selecteditem.getCname());
                            System.out.println("Delete after ignore "+selecteditem.getRank());
                            System.out.println("Delete after ignore "+selecteditem.getCountry());
                            System.out.println("Delet after ignore "+selecteditem.getPopulation());

                            Quote_Products worldpopulation = new Quote_Products(selecteditem.getCidid(),
                            selecteditem.getCname(),selecteditem.getRank(),
                            selecteditem.getRank(),selecteditem.getPopulation());
                            System.out.println(" EEE "+String.valueOf(worldpopulation));
                            worldpopulationlist.add(worldpopulation);
                            System.out.println(" EEE "+String.valueOf(worldpopulationlist));
                        }

从子列表中删除值如何在子列表中重新插入子列表值

提前致谢

0 个答案:

没有答案