메뉴 건너뛰기

조회 수 7061 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

이전 게시글과 이어지는 내용입니다.

[안드로이드] 프로젝트에 새로운 액티비티 추가하기 - http://snowbora.com/400
[안드로이드] 인텐트를 이용한 Activity간 이동 - http://snowbora.com/399



이번에는 인텐트(Intent)를 이용해서 데이터를 주고 받는 방법에 대해서 알아보겠습니다.
우선 첫번째 액티비티(firstActivity.java) 파일입니다.

01.package Intent.Example;
02. 
03.import java.io.Serializable;
04. 
05.import android.app.Activity;
06.import android.content.Intent;
07.import android.os.Bundle;
08.import android.view.View;
09.import android.widget.Button;
10. 
11.public class firstActivity extends Activity {
12.    /** Called when the activity is first created. */
13.    @Override
14.    public void onCreate(Bundle savedInstanceState) {
15.        super.onCreate(savedInstanceState);
16.        setContentView(R.layout.main);
17.         
18.        Button btnTest = (Button)findViewById(R.id.btnLaunch2ndActivity);
19.        btnTest.setOnClickListener(myButtonClick);
20.    }
21.     
22.    Button.OnClickListener myButtonClick = new Button.OnClickListener()
23.    {
24.        public void onClick(View v)
25.        {
26.            Intent intent = new Intent(firstActivity.this, secondActivity.class);
27.             
28.            MyObject obj = new MyObject(314, "SnowDeer");
29.            intent.putExtra("StringData_1", "첫번째 String 데이터");
30.            intent.putExtra("StringData_2", "두번째 String 데이터");
31.            intent.putExtra("ObjectData", obj);
32.             
33.            startActivity(intent);
34.        }
35.    };
36.}
37. 
38.class MyObject implements Serializable
39.{
40.    int nID;
41.    String strName;
42.     
43.    MyObject(int _id, String _Name)
44.    {
45.        nID = _id;
46.        strName = _Name;
47.    }
48.};


그리고 두번째 액티비티(secondActivity.java)로 가보겠습니다.

01.package Intent.Example;
02. 
03.import android.app.Activity;
04.import android.content.Intent;
05.import android.os.Bundle;
06.import android.view.View;
07.import android.widget.Button;
08.import android.widget.TextView;
09. 
10.public class secondActivity extends Activity {
11.    /** Called when the activity is first created. */
12.    @Override
13.    public void onCreate(Bundle savedInstanceState) {
14.        super.onCreate(savedInstanceState);
15.        setContentView(R.layout.main_2);
16.         
17.        TextView tvView = (TextView)findViewById(R.id.tvTextView);
18.         
19.        Intent intent = getIntent();
20.        if (intent != null)
21.        {
22.            String strText = "";
23.            MyObject obj;
24.             
25.            obj = (MyObject)intent.getSerializableExtra("ObjectData");
26.             
27.            strText = "StringData_1 : " + intent.getStringExtra("StringData_1") + "\n" +
28.                        "StringData_2 : " + intent.getStringExtra("StringData_2") + "\n" +
29.                        "MyObject.ID : " + obj.nID + "\n" +
30.                        "MyObject.Name : " + obj.strName;
31.             
32.            tvView.setText(strText);
33.        }
34.    }
35.     
36.    Button.OnClickListener myButtonClick = new Button.OnClickListener()
37.    {
38.        public void onClick(View v)
39.        {
40.            Intent intent = new Intent(secondActivity.this, firstActivity.class);
41.            startActivity(intent);
42.        }
43.    };
44.}


전체 프로젝트 파일 첨부합니다.


List of Articles
번호 제목 날짜 조회 수
177 안드로이드 android 개발 와이파이 유지 관련 2015.07.16 7034
176 안드로이드 - 플로팅 액션 버튼(Floating Action Button) 사용법 file 2021.04.02 969
175 안드로이드 - 프로그레스바(ProgressBar) 구현하기 file 2021.04.01 451
174 안드로이드 - 프레임레이아웃 (FrameLayout) file 2021.03.29 507
173 안드로이드 - 프래그먼트 (Fragment) 사용하기 file 2021.04.02 486
172 안드로이드 - 툴바(ToolBar)를 사용하여 앱바(App Bar) 구현하기 file 2021.04.01 448
171 안드로이드 - 토스트(Toast) 메시지 사용하기. file 2021.03.31 321
170 안드로이드 - 텍스트뷰(TextView) 사용법 정리 file 2021.03.31 1244
169 안드로이드 - 타이머(Timer) 구현하기 2021.04.01 1368
168 안드로이드 - 컨텍스트 메뉴(Context Menu) 사용 예제 file 2021.04.01 206
167 안드로이드 - 커스텀 폰트(Custom Font) 적용하기 file 2021.04.02 342
166 안드로이드 - 인텐트(Intent)를 활용한 액티비티(Activity)간 데이터 전달하기 file 2021.03.31 349
165 안드로이드 - 인텐트(Intent)를 활용한 액티비티(Activity) 생성 및 실행하기 file 2021.03.31 213
164 안드로이드 - 익명 클래스(Anonymous Class) 사용법 file 2021.03.31 281
163 안드로이드 - 옵션 메뉴 (Option Menu) 구현 방법 file 2021.04.01 283
162 안드로이드 - 에디트텍스트(EditText) 사용법 정리 file 2021.03.29 2750
161 안드로이드 - 액티비티(Activity)와 액티비티 생명 주기(Activity Life Cycle) file 2021.04.01 225
160 안드로이드 - 액티비티(Activity)로부터 결과 데이터 받아오기 file 2021.03.31 483
159 안드로이드 - 스타일 리소스(Style Resource) 사용하기 <style> file 2021.03.31 238
158 안드로이드 - 소방시설바이블 어플 소스 ( 폰갭, 폰갭플러그인, assets 폴더안의 파일 이용, pdf 리더기 선택, 유튜브재생기 선택 ) file 2015.06.29 7976
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved