2

我想显示包含父母和孩子甚至子孩子的可扩展列表视图。这些数据将从服务器访问。数据可以作为 JSON 数据返回。

我想访问与该父级关联的父级和子级。孩子也可能有子孩子。

 Ex:
  Name       Parent        Level       categoryId
  Audio       0               1           101
  Video       0               1           102
  songs      101              2           201
  data       101              2           202
  myhost     201              3           301
  HD         102              2           401
  TV         401              3           500

上面的示例显示了现在可用的数据。

附上我的代码

try {
    res1= httpclient1.execute(httppost1);
    responseBodys1 =EntityUtils.toString(res1.getEntity());

    JSONObject jsObject = new JSONObject(responseBodys1);
    JSONArray demo= jsObject.getJSONArray("categories");

    System.out.println("demo=="+demo.length());
    ArrayList<String> map = new ArrayList<String>();
    childs.add(new ArrayList<ArrayList<String>>());
    ArrayList<Integer> map1 = new ArrayList<Integer>();
    ArrayList<Integer> map3 = new ArrayList<Integer>();

    for(int i=0;i<demo.length();i++)

    {
        JSONObject movie = demo.getJSONObject(i);
           ctName = movie.getString("ctName");
           ctParent= movie.getInt("ctParent");
           int ctLevel = movie.getInt("ctLevel");
           ctCategoryId=movie.getInt("ctCategoryId");
           map.add(ctName);
          map1.add(ctParent);
          // map1.add(ctLevel);
           map3.add(ctCategoryId);

          System.out.println("Map1-===>"+map);
           System.out.println("Map3-===>"+map3);

          if(ctParent==0)
          {
           groups.add(ctName);
          }

           if(ctParent!=0)
           {
             int ctP= movie.getInt("ctParent");
             System.out.println("ctp-->"+ctP);
             for(int j=0;j<demo.length();j++)
             {


             if(ctP==ctCategoryId)
             {
                 System.out.println("matched--"+ctP+"=="+ctCategoryId);
                childs.add(new ArrayList<ArrayList<String>>());
                childs.get(i).add(new ArrayList<String>());
                 childs.get(i).get(j).add(ctName);

             }

           }
           }

我想将孩子放在相应的父母身上。在上面的代码中,它将只返回父母。孩子不会被展示,也不会在各自的父母之下。

我想将类别 ID 与父级进行比较,并将所有数据相互放置。最后它返回到 Expandable List 类。

所以任何人都可以帮助我。如何执行此操作。??????????

4

0 回答 0