안드로이드/Android Intent로 데이터 주고 받기
호출한 액티비티
호출당한 액티비티
출력결과
호출한 액티비티
package arabiannight.tistory.com; import java.util.ArrayList; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.util.Log; public class TestIntentActivity extends Activity { private ArrayListmArrayList = new ArrayList (); @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mArrayList.add("하이"); mArrayList.add("방가"); mArrayList.add("놀러"); mArrayList.add("가자"); Intent intent = new Intent(TestIntentActivity.this,TestIntentNextActivity.class); intent.putExtra("1", "하이하이"); intent.putExtra("2", 3); intent.putExtra("3", true); intent.putExtra("어레이", mArrayList); startActivityForResult(intent,1); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if(resultCode==RESULT_OK) // 액티비티가 정상적으로 종료되었을 경우 { if(requestCode==1) // requestCode==1 로 호출한 경우에만 처리합니다. { Log.d("test", ""+data.getStringExtra("re")); } } } }
호출당한 액티비티
package arabiannight.tistory.com; import java.util.ArrayList; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.util.Log; public class TestIntentNextActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.next); Log.d("onnew", "onCreate"); // 현재 활성화된 액티비티를 시작하게 한 인텐트 호출 Intent intent = getIntent(); if(intent!=null){ ArrayListtemp = intent.getStringArrayListExtra("어레이"); Log.d("test", "temp"+temp); String temp2 = intent.getStringExtra("1"); Log.d("test", "temp2"+temp2); int temp3 = intent.getIntExtra("2", 0); Log.d("test", "temp3"+temp3); boolean temp4 = intent.getBooleanExtra("3", false); Log.d("test", "temp4"+temp4); } intent.putExtra("re", "return"); setResult(RESULT_OK,intent); finish(); } }
출력결과
02-03 00:38:52.065: D/test(15658): temp[하이, 방가, 놀러, 가자] 02-03 00:38:52.065: D/test(15658): temp2하이하이 02-03 00:38:52.065: D/test(15658): temp33 02-03 00:38:52.065: D/test(15658): temp4true 02-03 00:38:52.080: D/test(15658): return
'Android > Intent' 카테고리의 다른 글
안드로이드/Android 단말마다 SMS, MMS, CALL 사용 여부 확인 하기~! (5) | 2012.05.28 |
---|---|
안드로이드/Android intent(인텐트)를 사용해 보자. (intent filter) (17) | 2012.05.20 |
안드로이드/Android 안드로이드 Intent 그리고 PendingIntent 와 Intent Sender (4) | 2012.03.12 |
안드로이드/Android Intent로 Video 재생 프로그램 선택 하기 (3) | 2012.02.23 |
안드로이드/Android Intent 활용 예시 (0) | 2012.02.03 |