Getting a Result from an Activity(by Contact example)

static final int PICK_CONTACT_REQUEST = 1;  // The request code

private void pickContact() {
    	Uri contacts = Uri.parse("content://contacts");
	    Intent pickContactIntent = new Intent(Intent.ACTION_PICK, contacts);
	    pickContactIntent.setType(Phone.CONTENT_TYPE); // Show user only contacts w/ phone numbers
	    startActivityForResult(pickContactIntent, PICK_CONTACT_REQUEST);
	}

	@Override
	protected void onActivityResult(int requestCode, int resultCode, Intent data) {
		// Check which request it is that we're responding to
	    if (requestCode == PICK_CONTACT_REQUEST) {
	        // Make sure the request was successful
	        if (resultCode == RESULT_OK) {
	            // Get the URI that points to the selected contact
	            Uri contactUri = data.getData();
	            // We only need the NUMBER column, because there will be only one row in the result
	            String[] projection = {Phone.NUMBER,Phone.CONTACT_ID};

	            // Perform the query on the contact to get the NUMBER column
	            // We don't need a selection or sort order (there's only one result for the given URI)
	            // CAUTION: The query() method should be called from a separate thread to avoid blocking
	            // your app's UI thread. (For simplicity of the sample, this code doesn't do that.)
	            // Consider using CursorLoader to perform the query.
	            Cursor cursor = getContentResolver()
	                    .query(contactUri, projection, null, null, null);
	            cursor.moveToFirst();

	            // Retrieve the phone number from the NUMBER column
	            int column = cursor.getColumnIndex(Phone.NUMBER);
	            int column_id=cursor.getColumnIndex(Phone.CONTACT_ID);
	            String number = cursor.getString(column);
	            String id=cursor.getString(column_id);
	            EditText edittext=(EditText)findViewById(R.id.edit_message);
	            edittext.setText(number +id);
	        }
	    }
	}

  

原文地址:https://www.cnblogs.com/nikyxxx/p/2684032.html