인텐트1
http://promobile.tistory.com/198
인텐트2
http://promobile.tistory.com/199
인텐트3
http://promobile.tistory.com/200
http://4eda.tistory.com/25
안녕하세요. Yo구르트입니다.
오늘은 앞선 강의인 액티비티간 전환에서도 잠깐 나왔던 Intent에 관해서 알아보겠습니다.
Intent
: 안드로이드에서 Activity간의 통신수단
: putExtra() : Intent에 data를 저장할 때 사용
: getExtra() : Intent에서 data를 가져올 때 사용
두 액티비티간 데이터 전송을 해보겠습니다.
1. 기본화면(Spinner와 Textedit는 앞선 강의 참조)
2. Send (HelloActivity)
public void onClick(View v){
Intent intent = new Intent(HelloActivity.this, ResultActivity.class);
intent.putExtra("Spinner1", spinner1.getSelectedItem().toString());
intent.putExtra("Spinner2", spinner2.getSelectedItem().toString());
intent.putExtra("Edittext1", edittext1.getText().toString());
startActivity(intent);
}
OK버튼을 클릭하면 putExtra를 통해 각 데이터를 저장합니다.
3. Receive (ResultActivity)
1)결과를 출력시킬 TextView를 생성합니다.
2)GetExtras를 통해 저장된 데이터를 가져옵니다.
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.result);
Intent intent = getIntent();
String str1;
String str2;
String str3;
str1 = intent.getExtras().getString("Spinner1");
str2 = intent.getExtras().getString("Spinner2");
str3 = intent.getExtras().getString("Edittext1");
TextView TxtResult1 = (TextView)findViewById(R.id.TxtResult1);
TxtResult1.setText(str1+" "+str2+" "+str3);
}
TextView를 통해 정확한 값이 전달되었는지 확인합니다.
4. 결과화면
값이 전달된 것을 볼 수 있습니다.