Advertisement
Guest User

Untitled

a guest
Jul 21st, 2013
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.70 KB | None | 0 0
  1. package com.dooble.pushit;
  2.  
  3. import java.util.ArrayList;
  4.  
  5. import android.content.Context;
  6. import android.view.LayoutInflater;
  7. import android.view.View;
  8. import android.view.ViewGroup;
  9. import android.widget.AbsListView;
  10. import android.widget.BaseExpandableListAdapter;
  11. import android.widget.ExpandableListView;
  12. import android.widget.TextView;
  13.  
  14. public class CatAdapter extends BaseExpandableListAdapter {
  15.     private Context context;
  16.     private LayoutInflater inflater;
  17.     private ArrayList<Category> categories;
  18.    
  19.     public CatAdapter(Context context, ArrayList<Category> categories) {
  20.         this.context = context;
  21.         inflater = LayoutInflater.from(context);
  22.         this.categories = categories;
  23.     }
  24.    
  25.     @Override
  26.     public Object getChild(int groupPosition, int childPosition) {
  27.         return categories.get(groupPosition).childs.get(childPosition);
  28.     }
  29.  
  30.     @Override
  31.     public long getChildId(int groupPosition, int childPosition) {
  32.         return childPosition;
  33.     }
  34.  
  35.     @Override
  36.     public View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent) {
  37.        
  38.         convertView = inflater.inflate(R.layout.catitem, parent, false);
  39.         TextView textView_catName = (TextView)convertView.findViewById(R.id.textView_catName);
  40.         Category current = categories.get(groupPosition).childs.get(childPosition);
  41.         textView_catName.setText(groupPosition + " , " + childPosition);
  42.  
  43.         if(current.childs.size() > 0 ) {
  44.             ExpandableListView elv = new ExpandableListView(context);
  45.             elv.setLayoutParams(new AbsListView.LayoutParams(AbsListView.LayoutParams.WRAP_CONTENT,  AbsListView.LayoutParams.WRAP_CONTENT));
  46.             elv.setAdapter(new CatAdapter(context, current.childs));
  47.             ((ViewGroup)convertView).addView(elv);
  48.         }
  49.        
  50.         return convertView;
  51.     }
  52.  
  53.     @Override
  54.     public int getChildrenCount(int groupPosition) {
  55.         return categories.get(groupPosition).childs.size();
  56.     }
  57.  
  58.     @Override
  59.     public Object getGroup(int groupPosition) {
  60.         return categories.get(groupPosition);
  61.     }
  62.  
  63.     @Override
  64.     public int getGroupCount() {
  65.         return categories.size();
  66.     }
  67.  
  68.     @Override
  69.     public long getGroupId(int groupPosition) {
  70.         return groupPosition;
  71.     }
  72.  
  73.     @Override
  74.     public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
  75.         convertView = inflater.inflate(R.layout.catitem, parent, false);
  76.         TextView textView_catName = (TextView)convertView.findViewById(R.id.textView_catName);
  77.         Category current = categories.get(groupPosition);
  78.         textView_catName.setText("" + groupPosition);
  79.  
  80.         return convertView;
  81.     }
  82.  
  83.     @Override
  84.     public boolean hasStableIds() {
  85.         return false;
  86.     }
  87.  
  88.     @Override
  89.     public boolean isChildSelectable(int groupPosition, int childPosition) {
  90.         return false;
  91.     }
  92. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement