Android通讯录表单

时间:2011-12-06 13:57:29

标签: android iphone contacts

在Android中是否有可能实现像在iPhone上实现的联系人表单

所以,我的意思是,是否可以使用默认的Android Contacts-Site in framework ? 它不一定在iPhone上看起来像。

enter image description here

我想使用包含联系人数据的 Extras (i.putExtra)启动此活动,以便在上一个活动中选择的联系人将显示在这些字段中。在此之后,应该可以添加所有这些信息到联系人

1 个答案:

答案 0 :(得分:2)

允许用户使用此选择联系人..

<uses-permission android:name="android.permission.READ_CONTACTS"/>

2)致电联系人选择

在您的Activity中,创建一个Intent,要求系统查找可以从Contacts URI中的项目执行PICK操作的Activity。

Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTENT_URI);

调用startActivityForResult,传入此Intent(以及此示例中的请求代码整数,PICK_CONTACT)。这将导致Android在People.CONTENT_URI上启动已注册为支持ACTION_PICK的活动,然后在进行选择(或取消)时返回此活动。

 startActivityForResult(intent, PICK_CONTACT);


@Override
public void onActivityResult(int reqCode, int resultCode, Intent data) {
super.onActivityResult(reqCode, resultCode, data);

switch (reqCode) {
case (PICK_CONTACT) :
if (resultCode == Activity.RESULT_OK) {
 Uri contactData = data.getData();
 Cursor c =  managedQuery(contactData, null, null, null, null);
 if (c.moveToFirst()) 
 {
   String name = c.getString(c.getColumnIndexOrThrow(People.NAME));

 }
}
break;
}
}

现在,一旦选择了联系人,您将获得填写edittexts及以上所有内容所需的信息。

这是关于如何执行此操作的优秀教程。祝好运!这应该可以帮到你的路! Working with Androind contacts