Before 2022/Android
startActivityForResult - 호출한 Activity에서 결과 값 받기
Eljoe
2019. 7. 11. 10:45
데이터를 전달하고자 하는(호출된) 액티비티
Intent intent = new Intent(전달하는 액티비티, 전달 받는 액티비티);
intent.putExtra("data", data);
// 호출했던(전달 받는) 액티비티에 전달할(돌려줄) 데이터를 지정한다.
setResult(RESULT_OK, mainIntent);
finish();
데이터를 전달받는(호출하는) 액티비티
// 액티비티를 호출한다.
startActivityForResult(new Intent(전달받는 액티비티, 전달하는 액티비티), REQ_CODE);
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// startActivityForResult에 지정된 Integer 인수를 통해 여러 액티비티에서 온 요청을 각각 처리할 수 있다.
if (requestCode == REQ_CODE && resultCode == RESULT_OK) {
String data = data.getStringExtra("data");
Log.e("onActivityResult", data);
}
}