728x90
목동코딩:
안드로이드 스튜디오에서 startActivityForResult() 메서드를 사용하여 다른 액티비티를 시작하고 그 결과를 수신하는 방법은 다음과 같습니다:
먼저, 다른 액티비티를 시작할 액티비티에서 startActivityForResult() 메서드를 호출합니다. 이때 호출 시 인텐트 객체와 requestCode를 함께 전달합니다.
requestCode는 나중에 결과를 수신할 때 이를 구별하기 위한 코드입니다.
Intent intent = new Intent(this, OtherActivity.class);
int requestCode = 1;
startActivityForResult(intent, requestCode);
다른 액티비티에서는 setResult() 메서드를 사용하여 결과 데이터와 resultCode를 설정합니다. 이때 resultCode는 이전 액티비티에서 전달한 requestCode와 일치해야 합니다.
Intent resultIntent = new Intent();
resultIntent.putExtra("result", "결과 데이터");
setResult(Activity.RESULT_OK, resultIntent);
이전 액티비티에서는 onActivityResult() 메서드를 오버라이드하여 결과를 수신합니다. 이때 requestCode와 resultCode를 확인하고 결과 데이터를 가져올 수 있습니다.
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 1 && resultCode == Activity.RESULT_OK) {
String result = data.getStringExtra("result");
// 결과 데이터 처리
}
}
위와 같이 startActivityForResult() 메서드를 사용하면 다른 액티비티에서 처리된 결과를 이전 액티비티에서 간편하게 수신할 수 있습니다.
728x90
'코딩교육 > 안드로이드' 카테고리의 다른 글
목동코딩학원, Android Studio Random함수 사용하는 방법 (0) | 2023.03.18 |
---|