package com.demo;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.ContentResolver;
import android.database.Cursor;
import android.os.Bundle;
import android.provider.Contacts;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;

public class ContentPv extends Activity {
ListView lv;
Cursor c;
// 此处定义了将要被查询的字段列表
String[] persons = new String[]{
Contacts.People._ID,
Contacts.People.NUMBER,
Contacts.People.NAME};

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
lv = (ListView)findViewById(R.id.lv);
ContentResolver cr = this.getContentResolver();
// 查询指定条件的联系人,此处规定了查询条件为电话号码不为空
c = cr.query(Contacts.People.CONTENT_URI, persons, Contacts.People.NUMBER + " is not null", null, Contacts.People.DEFAULT_SORT_ORDER);
c.moveToFirst();
// 建立Adapter并灌入ListView
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
R.layout.list, c, new String[] { Contacts.People.NAME },
new int[] { R.id.TextView01 });
lv.setAdapter(adapter);
}
}

与此同时在Manifest.xml配置允许读取联系人的权限
<uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission>

程序运行后效果如图所示,我在ListView上添加了一个OnItemClick监听器,点击时弹出指定联系人的电话号码,代码也很简单
c.moveToPosition(position);
new AlertDialog.Builder(this)
.setTitle("Hint")
.setMessage(c.getString(c.getColumnIndexOrThrow(Contacts.People.NUMBER)))
.setPositiveButton("OK", null)
.show();

更多相关文章

  1. Android(安卓)之 发送短信
  2. android ContentResolver 多表联合查询
  3. android读取联系人信息(学习版)
  4. Android(安卓)获取联系人的姓名、电话信息
  5. Android读取联系人的姓名及号码
  6. Android(安卓)添加新的联系人代码
  7. android 关于联系人列表的一个类
  8. android 查找联系人方法(支持首拼,全拼,英文)
  9. android 获取通讯录中同一联系人的多个号码

随机推荐

  1. 天杀的android官方文档——mapview只显示
  2. android webvie使用技巧
  3. 使用handler更新UI
  4. 【转】Notification 详解
  5. 基于Android中获取资源的id和url方法总结
  6. 浅入浅出Android(016):分别使用WebView和Int
  7. Android(安卓)webview解决JS报错chromium
  8. ListView 添加长度样式不固定的分割线
  9. 【Android】Webview常见问题
  10. Android(安卓)OpenCV 颜色识别