I have looked at several examples and I cant find what I am doing wrong.
my onActivityResult() method is not being called on my activity;
TransactionFo
As i don't have reputation to comment, so just want to make sure you don't have
android:launchMode="singleInstance"
in manifest or equivalent argument to create a intent.
You should override onActivityResult
in the calling Activity not in TransactionFormActivity
You are doing it a little wrong..
In your FirstActivity you should call:
//your code...
Intent i = new Intent(this, SecondActivity.class);
startActivityForResult(i, 1);
In your SecondActivity you should call:
Intent returnIntent = new Intent();
returnIntent.putExtra("result",result);
setResult(RESULT_OK,returnIntent);
finish();
and then back in your FirstActivity you use the onActivityResult to get the data back
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 1) {
if(resultCode == RESULT_OK){
String result=data.getStringExtra("result");
}
if (resultCode == RESULT_CANCELED) {
//Write your code if there's no result
}
}
}