コード例 #1
0
  private void updateAvatarView() {
    MultiDeleteListItemData ch = mMultiDeleteThreadData;

    Drawable avatarDrawable;
    if (ch.getContacts().size() == 1) {
      Contact contact = ch.getContacts().get(0);
      avatarDrawable = contact.getAvatar(mContext, sDefaultContactImage);

      if (contact.existsInDatabase()) {
        mAvatarView.assignContactUri(contact.getUri());
      } else {
        mAvatarView.assignContactFromPhone(contact.getNumber(), true);
      }
    } else {
      // TODO get a multiple recipients asset (or do something else)
      avatarDrawable = sDefaultContactImage;
      mAvatarView.assignContactUri(null);
    }
    mAvatarView.setImageDrawable(avatarDrawable);
  }
コード例 #2
0
  private void updateAvatarView() {
    Drawable avatarDrawable;
    if (mConversation.getRecipients().size() == 1) {

      Contact contact = mConversation.getRecipients().get(0);

      // to be continued
      avatarDrawable = contact.getAvatar(mContext, sDefaultContactImage);

      if (contact.existsInDatabase()) { // 010查看联系人是否存在于通讯录
        mAvatarView.assignContactUri(contact.getUri());
      } else {
        mAvatarView.assignContactFromPhone(contact.getNumber(), true);
      }
    } else {
      // TODO get a multiple recipients asset (or do something else)
      avatarDrawable = sDefaultContactImage;
      mAvatarView.assignContactUri(null);
    }
    mAvatarView.setImageDrawable(avatarDrawable);
    mAvatarView.setVisibility(View.VISIBLE);
  }
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
      View result;
      if (convertView == null) {
        result =
            mLayoutInflater.inflate(
                mIsGroupMembershipEditable
                    ? R.layout.group_member_item
                    : R.layout.external_group_member_item,
                parent,
                false);
      } else {
        result = convertView;
      }
      final Member member = getItem(position);

      QuickContactBadge badge = (QuickContactBadge) result.findViewById(R.id.badge);
      badge.assignContactUri(member.getLookupUri());

      TextView name = (TextView) result.findViewById(R.id.name);
      name.setText(member.getDisplayName());

      View deleteButton = result.findViewById(R.id.delete_button_container);
      if (deleteButton != null) {
        deleteButton.setOnClickListener(
            new OnClickListener() {
              @Override
              public void onClick(View v) {
                removeMember(member);
              }
            });
      }
      DefaultImageRequest request =
          new DefaultImageRequest(
              member.getDisplayName(), member.getLookupKey(), true /* isCircular */);
      mPhotoManager.loadPhoto(
          badge,
          member.getPhotoUri(),
          ViewUtil.getConstantPreLayoutWidth(badge),
          false,
          true /* isCircular */,
          request);
      return result;
    }
コード例 #4
0
 @Override
 public void assignContactUri(Uri uri) {
   badge.assignContactUri(uri);
 }