2017-11-24 4 views
-1

연락처 선택 도구 https://github.com/codinguser/android_contact_picker을 추가하기 위해이 라이브러리를 사용하고 있으며, 내 EditTextBox에 성공적으로 번호를 추가 할 수 있지만 연락처에서 선택한 여러 연락처를 추가하고 특히 번호 만 추가하고자합니다. EditTextView 이것은 내 연락처 선택 도구입니다. 당신이 여러 연락처를 선택하는 데 도움이 될 것입니다이 라이브러리 https://github.com/1gravity/Android-ContactPicker을 시도, 어떤 도움?멀티 피커를 추가하는 방법?

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(); 
} 
+0

Dude 방금받은 모든 연락처 inrecyclerview 또는 listview 확인란을 선택하면 확인란을 추가합니다. 체크 박스 값을 얻으십시오. –

+0

이 작업을 수행하는 방법을 저에게 도움이 될 수 있습니다. – subhash

+0

나중에 친절하게 모든 사람에게 이메일을 보내겠습니다. 코드 .... –

답변

0

을 그를 완료하기 위해 어댑터를 추가 할 경우, 나는 그것에 대해 붙어입니다. onActivityResult() 메소드에서 선택된 연락처를 가져오고 여기에서 editText에 표시 할 수 있습니다.

+0

Manoj 이전에는이 ​​라이브러리 만 사용했지만 여기에서는 이름 만 얻을 수 있지만 내 요구 사항은 표시 할 연락처가 아닌 번호입니다. 연락처 대신 이름 대신 연락하면됩니다. – subhash

+0

예, 숫자도 표시 할 수 있습니다. ADDRESS.name()을 사용하는 대신에이 줄에 putExtra (ContactPickerActivity.EXTRA_CONTACT_DESCRIPTION, ContactDescription.ADDRESS.name())를 사용합니다. PHONE.name()을 사용합니다. –

+0

많은 것을 감사드립니다. – subhash