I am trying do a simple application for Android
. I have two Activities (A
and B
). In B
I only want select a date
.
I start A
, and do:
Intent intent = new Intent(); intent.setClass(this, B.class); startActivityForResult(intent,1);
Then, in B
, I do:
Intent intent = getIntent(); setResult(RESULT_OK); intent.putExtra("Date",dateSelected); finish();
And, in A
, i have the next method:
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if(resultCode==RESULT_OK && requestCode==1){ Bundle bundle = getIntent().getExtras(); String aux = bundle.getString("nuevo"); ..... }
But data
, and bundle
, are null
. When i debug the code, i see that in class B
, intent
has the Extras
, but then, when i call finish()
and return to class A
, this intent
is not reachable.
How can i solve this problem?
onActivityResult - resultCode is always 0.
onActivityResult is the callback you have on the first activity to grab the contacts you choose. Follow this answer to receive notifications.
First you use startActivityForResult() with parameters in the first Activity and if you want to send data from the second Activity to first Activity then pass the value using Intent with the setResult() method and get that data inside the onActivityResult() method in the first Activity .
try this:
Then, in B, I do:
Intent intent = getIntent(); intent.putExtra("Date",dateSelected); setResult(RESULT_OK, intent); finish();
And, in A:
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if(resultCode == RESULT_OK && requestCode==1) { Bundle MBuddle = data.getExtras(); String MMessage = MBuddle.getString("Date"); } }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With