androidcontactpicker

how to add multi contact picker?


I am following this library to add contact picker https://github.com/codinguser/android_contact_picker, and I am able to get numbers successfully from adding to my EditTextBox but, I want to add multiple contacts selected from contact and add only number in particular EditTextView this is my contact picker activity, I am stuck about that where to add adapter to complete that, any help?:

public class ContactsPickerActivity extends AppCompatActivity implements OnContactSelectedListener {
public static final String SELECTED_CONTACT_ID  = "contact_id";
public static final String KEY_PHONE_NUMBER     = "phone_number";
public static final String KEY_CONTACT_NAME     = "contact_name";


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_contacts);

    FragmentManager         fragmentManager     = this.getSupportFragmentManager();
    FragmentTransaction     fragmentTransaction = fragmentManager.beginTransaction();
    ContactsListFragment fragment           = new ContactsListFragment();

    fragmentTransaction.replace(R.id.fragment_container, fragment);
    fragmentTransaction.commit();

    ActionBar actionBar = getSupportActionBar();
    if (actionBar != null) {
        actionBar.setDisplayHomeAsUpEnabled(true);
        actionBar.setTitle("Select contact");
    }
}


@Override
public void onContactNameSelected(long contactId) {
    /* Now that we know which Contact was selected we can go to the details fragment */

    Fragment    detailsFragment = new ContactDetailsFragment();
    Bundle      args            = new Bundle();
    args.putLong(ContactsPickerActivity.SELECTED_CONTACT_ID, contactId);
    detailsFragment.setArguments(args);
    FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();

    transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
    // Replace whatever is in the fragment_container view with this fragment,
    // and add the transaction to the back stack
    transaction.replace(R.id.fragment_container, detailsFragment);

    transaction.addToBackStack(null);
    // Commit the transaction
    transaction.commit();
}

/**
 * Callback when the contact number is selected from the contact details view 
 * Sets the activity result with the contact information and finishes
 */
@Override
public void onContactNumberSelected(String contactNumber, String contactName) {
    Intent intent = new Intent();
    intent.putExtra(KEY_PHONE_NUMBER, contactNumber);
    intent.putExtra(KEY_CONTACT_NAME, contactName);

    setResult(RESULT_OK, intent);
    finish();
}

Solution

  • Try this library https://github.com/1gravity/Android-ContactPicker it will help you to pick multiple contacts. You will get selected contacts in onActivityResult() method, from here you can display it in editText.