In my project in first parent of expandablelistview have simple listview and other some parent have gridview layout. how to create that type of view. now i create simple expandablelistview here its code:-
public class ExpndListview extends BaseExpandableListAdapter{
Context context;
ArrayList<ExpndParent> exParent;
ArrayList<ExpndChild> exchild;
String displaystatus = "0";
public ExpndListview(Context context,ArrayList<ExpndParent> exParent) {
// TODO Auto-generated constructor stub
this.context=context;
this.exParent=exParent;
//this.exchild=exchild;
// Toast.makeText(context, "in the Adapter", Toast.LENGTH_SHORT).show();
}
@Override
public Object getChild(int groupPosition, int childPosition) {
// TODO Auto-generated method stub
ArrayList<ExpndChild> chList=exParent.get(groupPosition).getItems();
return chList.get(childPosition);
}
@Override
public long getChildId(int groupPosition, int childPosition) {
// TODO Auto-generated method stub
return childPosition;
}
@Override
public View getChildView(final int groupPosition, final int childPosition,
boolean isLastChild, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
final View vi = convertView;
final ExpndChild child=(ExpndChild)getChild(groupPosition, childPosition);
if(convertView==null){
LayoutInflater infalInflater=(LayoutInflater)context.getSystemService(context.LAYOUT_INFLATER_SERVICE);
convertView=infalInflater.inflate(R.layout.dinkanddestsecondview, null);
}
TextView tvChild=(TextView)convertView.findViewById(R.id.tvChild);
TextView tvsub=(TextView)convertView.findViewById(R.id.tvsub);
final TextView tvnum=(TextView)convertView.findViewById(R.id.tvnum);
TextView tvadd=(TextView)convertView.findViewById(R.id.tvadd);
TextView tvChildzh = (TextView)convertView.findViewById(R.id.tvChildzh);
TextView tvprice = (TextView)convertView.findViewById(R.id.tvprice);
TextView tvid = (TextView)convertView.findViewById(R.id.tvid);
//tvnum.setText("0");
tvnum.setText(String.valueOf(child.getnum()));
tvChildzh.setText(child.gettvChildzh());
tvprice.setText("$"+child.gettvprice());
tvprice.setTag(child.gettvprice());
tvid.setText(child.gettvid());
tvChild.setText(child.getname().toString());
}
return convertView;
}
@Override
public int getChildrenCount(int groupPosition) {
// TODO Auto-generated method stub
ArrayList<ExpndChild> chList=exParent.get(groupPosition).getItems();
return chList.size();
}
@Override
public Object getGroup(int groupPosition) {
// TODO Auto-generated method stub
return exParent.get(groupPosition);
}
@Override
public int getGroupCount() {
// TODO Auto-generated method stub
return exParent.size();
}
@Override
public long getGroupId(int groupPosition) {
// TODO Auto-generated method stub
return groupPosition;
}
@Override
public View getGroupView(int groupPosition, boolean isExpanded,
View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ExpndParent parentgroup=(ExpndParent)getGroup(groupPosition);
if(convertView==null){
LayoutInflater inf=(LayoutInflater)context.getSystemService(context.LAYOUT_INFLATER_SERVICE);
convertView=inf.inflate(R.layout.expand_parent, null);
}
TextView tvGroup=(TextView)convertView.findViewById(R.id.tvGroup);
ImageView indi=(ImageView)convertView.findViewById(R.id.indi);
tvGroup.setText(parentgroup.getName());
if (isExpanded) {
indi.setImageResource(R.drawable.groupdown);
} else {
indi.setImageResource(R.drawable.groupup);
}
return convertView;
}
@Override
public boolean hasStableIds() {
// TODO Auto-generated method stub
return true;
}
@Override
public boolean isChildSelectable(int groupPosition, int childPosition) {
// TODO Auto-generated method stub
return true;
}