Android之打开系统联系人界面

按钮的点击事件: 打开系统联系人。

    public void btn_contacts(View v){
//      Intent intent = new Intent(this,ContactsActivity.class);
//      startActivityForResult(intent, 0);
        Intent intent = new Intent();
        intent.setAction("android.intent.action.PICK");
        intent.addCategory("android.intent.category.DEFAULT");
        intent.setType("vnd.android.cursor.dir/phone_v2");
        startActivityForResult(intent, 1);
    }

打开系统联系人 退出的时候调用

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if(data !=null){
        //  String num = data.getStringExtra("num");
        Uri uri = data.getData();
        String num = null;
        // 创建内容解析者
                ContentResolver contentResolver = getContentResolver();
                Cursor cursor = contentResolver.query(uri,
                        null, null, null, null);
                while(cursor.moveToNext()){
                    num = cursor.getString(cursor.getColumnIndex("data1"));
                    
                }
                cursor.close();
                //  把电话号码中的  -  符号 替换成空格
                num = num.replaceAll("-", "");
                //  给 EditText空间设置你选择的联系号码
                et_safe_num.setText(num);   
        }

你可能感兴趣的:(Android之打开系统联系人界面)