单击 main.xml 中定义的按钮时如何打开联系人 [英] how do i open contacts when i click a button defined in main.xml

查看:27
本文介绍了单击 main.xml 中定义的按钮时如何打开联系人的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在 Android 中开发 gps 跟踪应用程序.我已经完成了显示地图 n 的内容.现在我想在顶部创建一个按钮,单击该按钮会显示联系人,然后当我选择联系人时,它应该显示他或她的位置.请帮我解决一下这个.谢谢.

I am developing a gps tracking app in android. I am done with displaying the map n stuff. Now I want to make a button on top which when clicked would display the contacts, Then when I select the contact it should show me his or her location. Please help me with this. Thank you.

推荐答案

你可以通过在Button上设置一个OnClickListener 设置一个Event on Button click,代码如下,并使用Intent调用ContactPicker活动:

You can set an Event on Button click by setting an OnClickListener on the Button with the following code, and use Intent to call ContactPicker activity:

button.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
                 Intent intent= new Intent(Intent.ACTION_PICK,  ContactsContract.Contacts.CONTENT_URI);

        startActivityForResult(intent, PICK_CONTACT);

            }
        });

并在onActivityResult()中处理联系人uri以加载联系人的详细信息.

and in onActivityResult() process the contact uri to load details of 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.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
          // TODO Fetch other Contact details as you want to use

        }
      }
      break;
  }
}

这篇关于单击 main.xml 中定义的按钮时如何打开联系人的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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