一.ActivityA跳转ActivityB及传值返回
1. ActivityA 跳转
Intent intent = new Intent(this, ActivtyB.class);
startActivityForResult(intent, REQUEST_SELECT);
2.ActivityA onActivityResult 获取返回结果
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_SELECT&& resultCode == RESULT_OK) {
String name = data.getStringExtra("name");
}
}
3 ActivityB带值返回
Intent data = new Intent();
data.putExtra("name", "name");
setResult(RESULT_OK, data);
finish();
二.FragmentA跳转ActivityC及传值返回
1.FragmentA 跳转
Intent intent = new Intent(getActivity(), ActivityC.class);
intent.putExtra("setting_money", money);
startActivityForResult(intent,REQUEST_SETTING_MONEY);
2. FragmentA onActivityResult获取返回结果
@Override
public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == REQUEST_SETTING_MONEY && resultCode == RESULT_OK) {
Bundle bundle = data.getExtras();
money = bundle.getString("setting_money_result");
}
}
3 ActivityC带值返回
获取FragmentA传递的值
money = getIntent().getStringExtra("setting_money");
ActivityC带值返回
Bundle bundle = new Bundle();
bundle.putString("setting_money_result", currentSettingMoneyNew);
setResult(RESULT_OK, this.getIntent().putExtras(bundle));
finish();