Widget - Listview CustomeAdapter

Anmol dwivedi
0
final ArrayList<DataModel> dataModels;
final CustomAdapter adapter;
dataModels= new ArrayList<>();
dataModels.add(new DataModel("Apple Pie"));
dataModels.add(new DataModel("Banana Bread"));
dataModels.add(new DataModel("Cupcake"));
adapter= new CustomAdapter(dataModels,getApplicationContext());
listview1.setAdapter(adapter);
listview1.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
DataModel dataModel= dataModels.get(position);
showMessage(dataModel.getName());
}
});
}
public static class CustomAdapter extends ArrayAdapter<DataModel>{
    private ArrayList<DataModel> dataSet;
    Context mContext;
    private static class ViewHolder {
        TextView name;
    }
    public CustomAdapter(ArrayList<DataModel> data, Context context) {
        super(context, R.layout.row_item, data);
        this.dataSet = data;
        this.mContext=context;
    }
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        DataModel dataModel = getItem(position);
        ViewHolder viewHolder;
        final View result;
        if (convertView == null) {
            viewHolder = new ViewHolder();
            LayoutInflater inflater = LayoutInflater.from(getContext());
            convertView = inflater.inflate(R.layout.row_item, parent, false);
            viewHolder.name = (TextView) convertView.findViewById(R.id.name);
            result=convertView;
            convertView.setTag(viewHolder);
        } else {
            viewHolder = (ViewHolder) convertView.getTag();
            result=convertView;
        }
        viewHolder.name.setText(dataModel.getName());
        return convertView;
    }
}

public static class DataModel {
    String name;
    public DataModel(String name) {
        this.name=name;
    }
    public String getName() {
        return name;
    }
}

Post a Comment

0 Comments
* Please Don't Spam Here. All the Comments are Reviewed by Admin.
Post a Comment (0)
Our website uses cookies to enhance your experience. Learn More
Accept !