Что является намерением из параметров onActivityResult

Вот мойfirst activity код, откуда я называюsecond Activity:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
  if (keyCode == KeyEvent.KEYCODE_DPAD_LEFT){       
    startActivityForResult(new Intent("chap.two.Chapter2Activity2"),request_Code);          
  }    
  return false;
}

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
  if (requestCode == request_Code) {
    if (resultCode == RESULT_OK) 
      Toast.makeText(this,data.getData().toString(),Toast.LENGTH_SHORT).show();             
  }
}

И вот кодchap.two.Chapter2Activity2:

Button n = (Button) findViewById(R.id.btn_OK);
n.setOnClickListener(new View.OnClickListener() {               
   @Override
   public void onClick(View v) {
     // TODO Auto-generated method stub

     Intent data = new Intent();
     //---get the EditText view---
     EditText txt_username =(EditText) findViewById(R.id.txt_username);
     //---set the data to pass back---
     data.setData(Uri.parse(txt_username.getText().toString()));
     setResult(RESULT_OK, data);
     //---closes the activity---
     finish();

   }
});

вот вижу чтоsetResult(RESULT_OK, data) имеет два аргумента, но
onActivityResult(int requestCode, int resultCode, Intent data) есть три, и я хочу знать, какonActivityResult получает значение для третьего параметра? Как это работает, может кто-нибудь сказать мне? Почему это не ошибка?

Ответы на вопрос(2)

Ваш ответ на вопрос