Blame | Last modification | View Log | RSS feed
package com.saholic.profittill.navigationdrawer;import android.app.Activity;import android.content.Context;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.BaseExpandableListAdapter;import android.widget.ImageView;import android.widget.TextView;import com.saholic.profittill.R;import java.util.HashMap;import java.util.List;public class ExpandableNavigationAdapter extends BaseExpandableListAdapter {private List<ExpandableNavigationItem> parentRecord;private HashMap<String, List<String>> childRecord;private LayoutInflater inflater = null;private Activity mContext;public ExpandableNavigationAdapter(Activity context, List<ExpandableNavigationItem> parentList, HashMap<String, List<String>> childList) {this.parentRecord = parentList;this.childRecord = childList;mContext = context;inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);}@Overridepublic String getChild(int groupPosition, int childPosition) {return this.childRecord.get(getGroup(groupPosition).getTitle()).get(childPosition);}@Overridepublic long getChildId(int groupPosition, int childPosition) {return childPosition;}@Overridepublic View getChildView(int groupPosition, final int childPosition, boolean isLastChild, View convertView, ViewGroup parent) {String childConfig = getChild(groupPosition, childPosition);ViewHolder holder;try {if (convertView == null) {holder = new ViewHolder();convertView = inflater.inflate(R.layout.custom_list_view_child, null);holder.childTitle = (TextView) convertView.findViewById(R.id.childTitle);holder.childIcon= (ImageView) convertView.findViewById(R.id.childIcon);convertView.setTag(holder);} else {holder = (ViewHolder) convertView.getTag();}holder.childTitle.setText(childConfig);/* if(childConfig.equalsIgnoreCase("Amazon")){holder.childIcon.setBackgroundResource(R.drawable.amazon_store);}if(childConfig.equalsIgnoreCase("Flipkart")){holder.childIcon.setBackgroundResource(R.drawable.flipkart_store);}if(childConfig.equalsIgnoreCase("Paytm")){holder.childIcon.setBackgroundResource(R.drawable.paytm);}if(childConfig.equalsIgnoreCase("Saholic")){holder.childIcon.setBackgroundResource(R.drawable.saholic_store);}if(childConfig.equalsIgnoreCase("Snapdeal")){holder.childIcon.setBackgroundResource(R.drawable.snapdeal_store);}if(childConfig.equalsIgnoreCase("Shopclues")){holder.childIcon.setBackgroundResource(R.drawable.shopclues_store);}*/if(childConfig.equalsIgnoreCase("Amazon")){holder.childIcon.setBackgroundResource(R.drawable.amazon_store);}else if(childConfig.equalsIgnoreCase("Flipkart")){holder.childIcon.setBackgroundResource(R.drawable.flipkart_store);}else if(childConfig.equalsIgnoreCase("HomeShop18")){holder.childIcon.setBackgroundResource(R.drawable.homeshop18);}else if(childConfig.equalsIgnoreCase("Paytm")){holder.childIcon.setBackgroundResource(R.drawable.paytm);}else if(childConfig.equalsIgnoreCase("Saholic")){holder.childIcon.setBackgroundResource(R.drawable.saholic_store);}else if(childConfig.equalsIgnoreCase("Snapdeal")){holder.childIcon.setBackgroundResource(R.drawable.snapdeal_store);}else if(childConfig.equalsIgnoreCase("Shopclues")){holder.childIcon.setBackgroundResource(R.drawable.shopclues_store);}else if(childConfig.equalsIgnoreCase("Contact Us")){holder.childIcon.setBackgroundResource(R.drawable.conatct_us);}else if(childConfig.equalsIgnoreCase("How It Works")){holder.childIcon.setBackgroundResource(R.drawable.how_it_works);}else if(childConfig.equalsIgnoreCase("Questions?")){holder.childIcon.setBackgroundResource(R.drawable.about_us);}} catch (Exception e) {}return convertView;}@Overridepublic View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {ExpandableNavigationItem parentSampleTo = parentRecord.get(groupPosition);ViewHolder holder;try {if (convertView == null) {convertView = inflater.inflate(R.layout.custom_list_view, null);holder = new ViewHolder();holder.parentTitle = (TextView) convertView.findViewById(R.id.parentTitle);//holder.parentIcon = (ImageView) convertView.findViewById(R.id.parentIcon);convertView.setTag(holder);} else {holder = (ViewHolder) convertView.getTag();}holder.parentTitle.setText(parentSampleTo.getTitle());//holder.parentIcon.setBackgroundResource(parentSampleTo.getIcon());ImageView iconExpand = (ImageView) convertView.findViewById(R.id.icon_expand);ImageView iconCollapse = (ImageView) convertView.findViewById(R.id.icon_collapse);if (isExpanded) {iconExpand.setVisibility(View.GONE);iconCollapse.setVisibility(View.VISIBLE);} else {iconExpand.setVisibility(View.VISIBLE);iconCollapse.setVisibility(View.GONE);}if (getChildrenCount(groupPosition) == 0) {iconExpand.setVisibility(View.GONE);iconCollapse.setVisibility(View.GONE);}} catch (Exception e) {}return convertView;}public static class ViewHolder {private TextView childTitle;private TextView parentTitle;//private ImageView parentIcon;private ImageView childIcon;}@Overridepublic int getChildrenCount(int groupPosition) {return this.childRecord.get(getGroup(groupPosition).getTitle()).size();}@Overridepublic ExpandableNavigationItem getGroup(int groupPosition) {return this.parentRecord.get(groupPosition);}@Overridepublic int getGroupCount() {return this.parentRecord.size();}@Overridepublic long getGroupId(int groupPosition) {return groupPosition;}@Overridepublic boolean hasStableIds() {return false;}@Overridepublic boolean isChildSelectable(int groupPosition, int childPosition) {return true;}}