package in.ceeq.home;
import in.ceeq.R;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
public class DrawerAdapter extends BaseAdapter {
private LayoutInflater layoutInflater;
public static DrawerAdapter getInstance(LayoutInflater layoutInflater) {
return new DrawerAdapter(layoutInflater);
}
public DrawerAdapter(LayoutInflater layoutInflater) {
this.layoutInflater = layoutInflater;
}
@Override
public int getCount() {
return 12;
}
@Override
public Object getItem(int arg0) {
return null;
}
@Override
public long getItemId(int arg0) {
return 0;
}
public static class ViewHolder {
public static TextView headerTextView;
public static TextView innerTextView;
}
@Override
public View getView(int position, View convertView, ViewGroup arg2) {
switch (position) {
case 1:
case 5:
convertView = layoutInflater.inflate(R.layout.drawer_action_header, null);
ViewHolder.headerTextView = (TextView) convertView.findViewById(R.id.drawer_list_header);
ViewHolder.headerTextView.setText(getText(position));
break;
default:
convertView = layoutInflater.inflate(R.layout.drawer_action_inner, null);
ViewHolder.innerTextView = (TextView) convertView.findViewById(R.id.drawer_list_text);
ViewHolder.innerTextView.setText(getText(position));
ViewHolder.innerTextView.setCompoundDrawablesWithIntrinsicBounds(getInnerImage(position), 0, 0, 0);
break;
}
return convertView;
}
public int getText(int position) {
switch (position) {
case 0:
return R.string.my_device;
case 1:
return R.string.navigate;
case 2:
return R.string.tab_home;
case 3:
return R.string.tab_backup;
case 4:
return R.string.tab_security;
case 5:
return R.string.more;
case 6:
return R.string.privacy;
case 7:
return R.string.menu_feedback;
case 8:
return R.string.about;
case 9:
return R.string.rate;
case 10:
return R.string.settings;
case 11:
return R.string.help;
case 12:
return R.string.share;
default:
return R.string.rate;
}
}
public int getInnerImage(int position) {
switch (position) {
case 0:
return R.drawable.ic_stat_my_device;
case 2:
return R.drawable.ic_stat_home;
case 3:
return R.drawable.ic_stat_storage;
case 4:
return R.drawable.ic_stat_security;
case 6:
return R.drawable.ic_stat_privacy;
case 7:
return R.drawable.ic_stat_content_email;
case 8:
return R.drawable.ic_stat_action_about;
case 9:
return R.drawable.ic_stat_rating_important;
case 10:
return R.drawable.ic_stat_settings;
case 11:
return R.drawable.ic_stat_help;
case 12:
return R.drawable.ic_stat_share;
default:
return R.drawable.ic_stat_rating_important;
}
}
}