package com.moez.QKSMS.ui.dialog.conversationdetails;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import com.moez.QKSMS.R;
import com.moez.QKSMS.data.Contact;
import com.moez.QKSMS.data.ContactList;
import com.moez.QKSMS.ui.view.AvatarView;
import com.moez.QKSMS.ui.view.QKTextView;
public class ConversationDetailsContactListAdapter extends ArrayAdapter {
private ContactList mContacts;
public ConversationDetailsContactListAdapter(Context context, ContactList contacts) {
super(context, R.layout.list_item_recipient);
mContacts = contacts;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = View.inflate(getContext(), R.layout.list_item_recipient, null);
holder = new ViewHolder(convertView);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
Contact contact = mContacts.get(position);
holder.name.setText(contact.getName());
holder.address.setText(contact.getNumber());
holder.avatar.setImageDrawable(contact.getAvatar(getContext(), null));
holder.avatar.setContactName(contact.getName());
if (contact.existsInDatabase()) {
holder.avatar.assignContactUri(contact.getUri());
} else {
holder.avatar.assignContactFromPhone(contact.getNumber(), true);
}
return convertView;
}
@Override
public int getCount() {
return mContacts.size();
}
static class ViewHolder {
AvatarView avatar;
QKTextView name;
QKTextView address;
public ViewHolder(View view) {
avatar = (AvatarView) view.findViewById(R.id.avatar);
name = (QKTextView) view.findViewById(R.id.name);
address = (QKTextView) view.findViewById(R.id.address);
}
}
}