1. Activity1中设定startActivityForResult方法
Button btn1 = findViewById(R.id.btn1); btn1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(FirstActivity.this, SecondActivity.class); //设置方法,1是唯一值 startActivityForResult(intent, 1); } });
2. Activity2中设定setResult方法
Button btn2=findViewById(R.id.btn2); btn2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent=new Intent(); intent.putExtra("data_return","hello FirstActivity"); //返回数据 setResult(RESULT_OK,intent); finish(); } });
3. Activity1中设定onActivityResult事件
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { switch (requestCode) { case 1: if (resultCode == RESULT_OK) { String returnData = data.getStringExtra("data_return"); Log.d("FirstActivity", returnData); } break; default: } }