2012-06-22 77 views
0

我可以檢索中的聯繫方式只有其名,PHONENUMBER和電子郵件在聯繫人URI中添加電話標籤和電子郵件標籤?

**ContactsContract.CommonDataKinds.Phone , 
ContactsContract.CommonDataKinds.Phone.CONTENT_URI** and 
**Email.CONTENT_URI.** 

我要補充的電話標籤[這意味着它是一個個人號碼或家庭號碼等]及電郵標記[機構是公司電子郵件或個人電子郵件等]到顯示器。我必須使用哪個功能來做到這一點。

回答

0

隨着電話和電子郵件,你還可以使用下面的代碼檢查返回的電話和電子郵件的Type

String type; 

int contactPhoneType = cursorObject.getInt(cursorObject.getColumnIndex(ContactsContract.CommonDataKind‌​s‌​.Phone.TYPE)) 

if(contactPhoneType == ContactsContract.CommonDataKinds.Phone.TYPE_HOME){ 
//Logic to set the type tag 
} 

switch(contactPhoneType){ 
case ContactsContract.CommonDataKinds.Phone.TYPE_HOME: 
type = "Home"; 
break; 

case ContactsContract.CommonDataKinds.Phone.TYPE_MOBILE: 
type = "Mobile"; 
break; 

case ContactsContract.CommonDataKinds.Phone.TYPE_WORK: 
type = "Work" 
break; 
} 

和電子郵件使用以下命令:

int contactEmailType = cursorObject.getInt(cursorObject.getColumnIndex(ContactsContract.CommonDataKinds.Email.TYPE)) 

if(contactEmailType == ContactsContract.CommonDataKinds.Email.TYPE_WORK){ 
    //logic to set the email type tag 
} 

所有其他類型可以使用TYPE成員變量ContactsContract.CommonDataKinds.PhoneContactsContract.CommonDataKinds.Email進行檢查。

+0

如果我添加此行,我將獲得電話類型.......... int contactPhoneType = cursorObject.getInt(cursorObject.getColumnIndex(ContactsContract.CommonDataKinds.Phone.TYPE))...僅顯示和顯示contactPhoneType到ListView。 – Beginner

+0

您將通過使用cursorObject.getInt(cursorObject.getColumnIndex(ContactsContract.CommonDataKinds .Phone.TYPE))''將手機類型作爲int值。這個「int」值只是電話號碼的「類型」的指示符。例1代表TYPE_HOME,2代表TYPE_MOBILE等。使用'Switch'模塊來檢查'int'的值,然後執行你的邏輯。 –

+0

檢查以下鏈接以獲取所有電話類型信息: http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.Phone.html#TYPE_HOME –

相關問題