Ich kann den Kontaktnamen erhalten, die der Benutzer wählen, aber nicht die TelefonnummerWie würde ich auch die Telefonnummer von dem Kontakt erhalten, den der Benutzer ausgewählt hat?
Im onclick
:
Intent intent = new Intent(Intent.ACTION_PICK,
ContactsContract.Contacts.CONTENT_URI);
startActivityForResult(intent,PICK_CONTACT);
PICK_CONTACT
ist nur ein int Wert, den man sein mein requestcode gleich
dann :
@Override
protected void onActivityResult(int reqCode, int resultCode, Intent data) {
super.onActivityResult(reqCode, resultCode, data);
if (reqCode == PICK_CONTACT) {
if (resultCode == AppCompatActivity.RESULT_OK) {
Uri contactData = data.getData();
Cursor c = getContentResolver().query(contactData, null, null, null, null);
if (c.moveToFirst()) {
String name = c.getString(c.getColumnIndexOrThrow(ContactsContract.Contacts.DISPLAY_NAME));
contactadder.setText(name);
c.close();
}
ich auf der Benutzer geklickt hat nur in der Lage sein wollen, um die Nummer und den Namen des Kontakts, ich bekam den Namen, wie Sie sollten sehen können, aber nicht, dass es nur ein oder zwei Zeilen Code sein das bekommen Anzahl der besagten Kontakte auch? Das konnte ich einfach in meine if-Anweisung @Henning stecken –
Aber wie Sie sehen können, gibt es normalerweise keine "die" Nummer, die ein Kontakt mehrere haben kann. Auch Sie haben Glück, dass die erste Zeile den Namen enthält, auch dies ist nicht sicher. Versuchen Sie, durch Ihre Ergebnismenge zu iterieren und die Farbe der Zeilen auszudrucken. vielleicht können Sie sehen, was Sie brauchen –