package com.gusfree.intent; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Toast; public class IntentActivity extends Activity implements OnClickListener{ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); findViewById(R.id.button1).setOnClickListener(this); Log.i("onCreate", "onCreate 시작"); } @Override public void onClick(View v) { // 에러찾을때 Log.w("onClick","버튼 눌렀다"); //버튼 누르면 Sub로 Activity간 이동하기 Intent intent=new Intent(); intent.setClass(this, SubActivity.class); //intent에 데이터 binding하기 intent.putExtra("name", "park!"); //startActivity(intent); //이동 //Activity이동하고 되돌아오면 onActivityResult호출 startActivityForResult(intent, 1000); //requestCode } @Override //3번째 파라미터가 인텐트! //1param =1000, 2param = 777, 3param=theIntent protected void onActivityResult(int requestCode, int resultCode, Intent data) { if(requestCode==1000){//requestCode사용 예 if(resultCode==777){//resultcode사용예 String id=data.getStringExtra("id"); int month=data.getIntExtra("month", 12); Toast.makeText(this, id+month, 0).show(); }else{ } //super.onActivityResult(requestCode, resultCode, data); } } }SubActivity.java
package com.gusfree.intent; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class SubActivity extends Activity implements OnClickListener{ Intent theIntent;//객체 선언 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.sub); Button btn = (Button)findViewById(R.id.button1); btn.setOnClickListener(this); //intent에 binding된 데이터 읽기 theIntent = getIntent();//(객체 초기화)나를 호출한 인텐트 찾기 String name=theIntent.getStringExtra("name");//키 btn.setText(name+btn.getText()); } @Override public void onClick(View arg0) { theIntent.putExtra("id", "com.gusfree.intent"); theIntent.putExtra("month", 5); //forResult로 왔을때 사용해야 되는 메서드 setResult(777, theIntent);//resultCode finish();//액티비티 종료 } }
다시 눌렀을때~~
'Android > 2012.04월 강좌' 카테고리의 다른 글
5일차 Menu (Option Menu, Context Menu) (0) | 2012.05.02 |
---|---|
5일차 Intent 3 전화걸기 문자보내기 인터넷 (2) | 2012.05.02 |
5일차 LogCat을 사용한 error 찾기 (0) | 2012.05.02 |
5일차 Intent (0) | 2012.05.02 |
5일차 Grid (0) | 2012.05.02 |