如何从Android的联系人的姓氏和名字吗? [英] How to get the first name and last name from Android contacts?

查看:177
本文介绍了如何从Android的联系人的姓氏和名字吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何从Android的联系人以下领域?我用的Andr​​oid 2.2。

  1. 名称preFIX
  2. 的名字
  3. 在中间名
  4. 名称preFIX
  5. 在拼音给定的名称
  6. 在拼音中间名
  7. 在拼音姓氏
解决方案

ContactsContract.CommonDataKinds.StructuredName 类。你可以找到有你正在寻找所有列。尝试某事是这样的:

 字符串whereName = ContactsContract.Data.MIMETYPE +=;
    的String [] whereNameParams =新的String [] {ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE};
    光标nameCur = contentResolver.query(ContactsContract.Data.CONTENT_URI,空,whereName,whereNameParams,ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME);
    而(nameCur.moveToNext()){
        String所给出= nameCur.getString(nameCur.getColumnIndex(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME));
        字符串的家庭= nameCur.getString(nameCur.getColumnIndex(ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME));
        字符串显示= nameCur.getString(nameCur.getColumnIndex(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME));
    }
    nameCur.close();
 

它返回的联系人的所有名称。为了更precise可以添加联系人id作为一个额外的参数查询 - 你会得到的地址为特​​定联系人

How to get the following fields from Android contacts? I used Android 2.2.

  1. Name prefix
  2. First name
  3. Middle name
  4. Last name
  5. Name prefix
  6. Phonetic given name
  7. Phonetic middle name
  8. Phonetic family name

解决方案

Look at ContactsContract.CommonDataKinds.StructuredName class. You can find there all columns you are looking for. Try sth like this:

    String whereName = ContactsContract.Data.MIMETYPE + " = ?";
    String[] whereNameParams = new String[] { ContactsContract.CommonDataKinds.StructuredName.CONTENT_ITEM_TYPE };
    Cursor nameCur = contentResolver.query(ContactsContract.Data.CONTENT_URI, null, whereName, whereNameParams, ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME);
    while (nameCur.moveToNext()) {
        String given = nameCur.getString(nameCur.getColumnIndex(ContactsContract.CommonDataKinds.StructuredName.GIVEN_NAME));
        String family = nameCur.getString(nameCur.getColumnIndex(ContactsContract.CommonDataKinds.StructuredName.FAMILY_NAME));
        String display = nameCur.getString(nameCur.getColumnIndex(ContactsContract.CommonDataKinds.StructuredName.DISPLAY_NAME));
    }
    nameCur.close();

It returns all names in contacts. To be more precise you can add a contact id as an additional parameter to the query - you will get address for particular contact.

这篇关于如何从Android的联系人的姓氏和名字吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆