package com.nix.sample;
import java.util.List;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ImageView;
import android.widget.TextView;
public class MenuItemAdapter extends ArrayAdapter<MenuItem> {
private LayoutInflater mInflater;
public MenuItemAdapter(Context context, List<MenuItem> objects) {
super(context, 0, objects);
mInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.menu_list_item, null);
holder = new ViewHolder();
holder.icon = (ImageView) convertView.findViewById(R.id.icon);
holder.title = (TextView) convertView.findViewById(R.id.title);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
MenuItem item = getItem(position);
if (item.getIcon() != null) {
holder.icon.setImageDrawable(item.getIcon());
holder.icon.setVisibility(View.VISIBLE);
} else {
holder.icon.setVisibility(View.GONE);
}
holder.title.setText(item.getTitle());
return convertView;
}
static class ViewHolder {
ImageView icon;
TextView title;
}
}