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を親と比較し、すべてのデータを相互に配置したいと思います。最後に、ExpandableListクラスに戻ります。

だから誰もが私を助けてくれます。この操作の実行方法。???????????

4

0 に答える 0