Aquí es mi first activity
código de donde yo llamo el second Activity
:¿Cuál es la intención de los parámetros onActivityResult
@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();
}
}
Y aquí es un código de 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();
}
});
aquí veo que setResult(RESULT_OK, data)
tiene dos argumentos pero
onActivityResult(int requestCode, int resultCode, Intent data)
tiene tres y quiero saber cómo onActivityResult
obtiene valor para el tercer parámetro? ¿Cómo funciona? ¿Puede alguien decirme? ¿Por qué no es este error?
simplemente si este ansswer http://stackoverflow.com/a/25196220/1587156 –