Android Open Source - ContactsManager Contact List Adapter






From Project

Back to project page ContactsManager.

License

The source code is released under:

Apache License

If you think the Android project ContactsManager listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package silverhillapps.com.contactsmanager.adapter;
//www .  j  a  v  a2  s  .c  om
import android.content.Context;
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 silverhillapps.com.contactsmanager.R;
import silverhillapps.com.contactsmanager.model.Contact;

/**
 * Adapter class for representing the general list view. We use ArrayAdapter as the list is not enough complex to extend from BaseAdapter
 */
public class ContactListAdapter extends ArrayAdapter<Contact> {

    private Context mContext;
    private List<Contact> mContacts;   // The contact model.
    private LayoutInflater mInflater = null;


    public ContactListAdapter(Context context, List<Contact> objects) {
        super(context, R.layout.list_row_general, objects);

        this.mContext = context;
        this.mContacts = objects;
        mInflater = LayoutInflater.from(mContext);

    }


    static class ViewHolder {
        public TextView firstNameTextView;
        public TextView surnameTextView;

    }


    @Override
    public View getView(int position, View convertView, ViewGroup parent) {

        ViewHolder holder;
        View rowPhotoView = convertView;

        // We reuse the views
        if (rowPhotoView == null) {

            rowPhotoView = mInflater.inflate(R.layout.list_row_general, null);

            holder = new ViewHolder();
            holder.firstNameTextView = (TextView) rowPhotoView.findViewById(R.id.firstname_textView_generalList);
            holder.surnameTextView = (TextView) rowPhotoView.findViewById(R.id.surname_textView_generalList);

            rowPhotoView.setTag(holder);
        }
        else{
            holder = (ViewHolder) rowPhotoView.getTag();
        }

        Contact j = (Contact) getItem(position);

        // UI update
        holder.firstNameTextView.setText(j.getFirst_name());
        holder.surnameTextView.setText(j.getSurname());

        return rowPhotoView;
    }


    /**
     * Method for communicating with the controller.
     * @param result
     */
    public void setResults(List<Contact> result) {
        this.clear();
        this.addAll(result);

        notifyDataSetChanged();

    }

}




Java Source Code List

silverhillapps.com.contactsmanager.ApplicationTest.java
silverhillapps.com.contactsmanager.CMApplication.java
silverhillapps.com.contactsmanager.ContactDetailActivity.java
silverhillapps.com.contactsmanager.ContactListActivity.java
silverhillapps.com.contactsmanager.adapter.ContactListAdapter.java
silverhillapps.com.contactsmanager.conf.Constants.java
silverhillapps.com.contactsmanager.db.DatabaseHandler.java
silverhillapps.com.contactsmanager.loader.ContactRepositoryModule.java
silverhillapps.com.contactsmanager.loader.ContactRepository.java
silverhillapps.com.contactsmanager.loader.RepositoryReceiver.java
silverhillapps.com.contactsmanager.manager.LoaderManagerFacade.java
silverhillapps.com.contactsmanager.manager.ManagerInterface.java
silverhillapps.com.contactsmanager.manager.ManagerModule.java
silverhillapps.com.contactsmanager.model.Contact.java
silverhillapps.com.contactsmanager.rest.ContactsRestClient.java
silverhillapps.com.contactsmanager.rest.RestContactRepository.java
silverhillapps.com.contactsmanager.utils.ConnectionUtils.java