Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package es.simplelistview.adapter;
- import android.annotation.SuppressLint;
- import android.content.Context;
- import android.support.annotation.NonNull;
- import android.support.annotation.Nullable;
- import android.support.design.widget.Snackbar;
- import android.view.LayoutInflater;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.ArrayAdapter;
- import android.widget.TextView;
- import java.util.List;
- import es.simplelistview.R;
- import es.simplelistview.model.Person;
- /**
- * Created by elissa on 3/12/18.
- */
- public class PersonListAdapter extends ArrayAdapter<Person> implements View.OnClickListener {
- private Context thisContext;
- private List<Person> personList;
- public PersonListAdapter (@NonNull Context context, int resource, List<Person> personList) {
- super (context, resource);
- this.thisContext = context;
- this.personList = personList;
- }
- /**
- * To get List Size
- */
- @Override public int getCount () {
- return personList.size ();
- }
- /**
- * To get List Position
- */
- @Nullable @Override public Person getItem (int position) {
- return personList.get (position);
- }
- @SuppressLint("ViewHolder") @NonNull @Override public View getView (
- int position, @Nullable View convertView, @NonNull ViewGroup parent) {
- //Get the data item base on position
- Person person = personList.get (position);
- //Inflate the item template
- LayoutInflater li = LayoutInflater.from (thisContext);
- convertView = li.inflate (R.layout.list_item, parent, false);
- //Click on list view item
- convertView.setTag (position);
- convertView.setOnClickListener (this);
- //Assign data
- TextView txtName = convertView.findViewById (R.id.lblName);
- TextView txtPhoneNumber = convertView.findViewById (R.id.lblPhoneNumber);
- txtName.setText (person.getName ());
- txtPhoneNumber.setText (person.getPhNo ());
- //return the view
- return convertView;
- }
- @Override public void onClick (View view) {
- int position = (Integer) view.getTag ();
- Person person = personList.get (position);
- Snackbar.make (view, person.getName (), Snackbar.LENGTH_LONG).show ();
- }
- }
Add Comment
Please, Sign In to add comment