Notice
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
Tags
- 크로스오버
- 단 벌란
- 유로댄스
- 몰도바
- o-zone
- POP
- Arsenie Todiraş
- Windows DDK
- WinAPI
- Maksim
- 아르세니에 토디라슈
- 해외 여행
- Radu Sârbu
- input method editor
- API
- ime
- Romanian
- Euro-Dance
- 라두 스르부
- Jr
- Dan Balan
- 막심 므라비차
- Moldovan
- c언어
- 철도
- Disc O-Zone
- Windows API
- 루마니아어
- 일본 여행
- windowsAPI
- Today
- 204
- Total
- 1,073,377
(코딩캣) = "코딩"하는 고양이;
인텐트를 통한 액티비티간 결과값 전달하기 본문
Application Programming Interface/Android
인텐트를 통한 액티비티간 결과값 전달하기
컴파일러님, 이 코드는 고양이발로 작성되었습니다. 코딩집사 2015. 4. 20. 17:05MainActivity에서 SubActivity로 대화상자를 띄우고 그 결과를 MainActivity가 받고자 하는 경우...
1. MainActivity에서 SubActivity를 호출하는 부분
public class MainActivity extends Activity implements View.OnClickListener { // SubActivity를 모달 다이얼로그로 띄우는 동작을 ACTIVITY_CODE_DEFAULT (0)으로 정의합니다. public static final int ACTIVITY_CODE_DEFAULT = 0; // ... 중략 ... @Override public void onClick(View v) { // MainActivity 내 어떤 버튼을 클릭하여 SubActivity를 모달 다이얼로그처럼 띄웁니다. Intent intent = new Intent(MainActivity.this, SubActivity.class); intent.putExtra("value", "테스트"); this.startActivityForResult(intent, ACTIVITY_CODE_DEFAULT); } }
2. SubActivity에서 MainActivity로 결과를 전달하는 부분
public class SubActivity extends Activity implements View.OnClickListener { // SubActivity를 띄운 결과가 인텐트에 실려 MainActivity로 전달되는데, 이 때 값의 이름을 정의합니다. public static final String INTENT_NAME_RESULT = "result"; private Button buttonYes = null; // [예(Y)] 버튼 private Button buttonNo = null; // [아니오(N)] 버튼 private Button buttonCancel = null; // [취소(C)] 버튼 // ... 중략 ... @Override public void onClick(View v) { Intent intent = new Intent(); if (v == null) { } else if (v.equals(this.buttonYes)) { intent.putExtra(INTENT_NAME_RESULT, "예"); // 또는 intent.setAction("예"); } else if (v.equals(this.buttonNo)) { intent.putExtra(INTENT_NAME_RESULT, "아니오"); // 또는 intent.setAction("아니오"); } else if (v.equals(this.buttonCancel)) { intent.putExtra(INTENT_NAME_RESULT, "취소"); // 또는 intent.setAction("취소"); } else { } this.setResult(Activity.RESULT_OK, intent); this.finish(); } }
3. SubActivity가 닫히고 MainActivity로 돌아올 때 결과 얻기
public class MainActivity extends Activity implements View.OnClickListener { public static final int ACTIVITY_CODE_DEFAULT = 0; // ... 중략 ... @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == ACTIVITY_CODE_DEFAULT && resultCode == Activity.RESULT_OK) { if (data != null) { // 결과 가져오기 String result = data.getStringExtra(SubActivity.INTENT_NAME_RESULT); // 또는 data.getAction(); } } } }
'Application Programming Interface > Android' 카테고리의 다른 글
Android Studio에서 SQLCipher 라이브러리 추가 방법 (0) | 2017.02.08 |
---|---|
인텐트를 통한 액티비티간 결과값 전달하기 (0) | 2015.04.20 |
위젯 업데이트 주기 빠르게 하기 (1) | 2015.03.18 |
MediaRecorder 클래스 사용법 (소리 편) (0) | 2015.02.09 |
MediaPlayer 클래스 사용법 (0) | 2015.02.06 |
위젯 구현하기 (0) | 2015.02.05 |
0 Comments