반응형
안녕하세요. 훈츠입니다. 금일은 액티비티를 통해 데이터를 전달하고 받는 방법에 관해 포스팅 합니다.
안드로이드 시스템 (Back Stack)
안드로이드 시스템안에 backStack 안에다가 아래와 같이 액티비티를 쌓습니다.
Intent.setFlag 를 통해 backStack 에 쌓는것을 계속 쌓지 않을 수도 있습니다.
- 액티비티 RequsetCode 담아서 startActivity 시작
- 새로 시작된 액티비티에서 data를 받는 방법
- getIntent 를 override 하여, get자료형Extra 를통해 값을 반환
- onActivitiyResult 를 override 하여, get자료형Extra 를통해 값을 반환
- Request 한 액티비티에서 값을 반환 받는 방법
- getIntent 를 override 하여, get자료형Extra 를통해 값을 반환
- onActivitiyResult 를 override 하여, get자료형Extra 를통해 값을 반환
코드 공유
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
//Hoons Blog---https://rain2002kr.tistory.com------------------------------------------------------------------코드///
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
bt_scr2.setOnClickListener{
val requsetCode = 1
val intent = Intent(this, Main2Activity::class.java)
intent.putExtra("main","메인에서 왔어요")
startActivityForResult(intent , requsetCode)
}
}
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if(requestCode == 1 && resultCode== Activity.RESULT_OK){
}
}
}
// MAIN 에서 온 Intent 받는 액티비티
class Main2Activity : AppCompatActivity() {
override fun getIntent(): Intent {
return super.getIntent()
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main2)
val intent = getIntent()
bt_scr2_finish.setOnClickListener{
val intent = Intent()
intent.putExtra("Message", "MAIN2 로부터 다시 돌아왔습니다. ")
setResult(Activity.RESULT_OK, intent)
finish()
}
}
}
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter
|
http://colorscripter.com/info#e" target="_blank" style="text-decoration:none;color:white">cs |
'안드로이드 프로그래밍[Kotiln Code] > 안드로이드 초기 강좌' 카테고리의 다른 글
[안드로이드] 액티비티 4 ( 액티비티와 프래그먼트 통신 with inteface ) (0) | 2020.04.20 |
---|---|
[안드로이드] 액티비티 3 ( 암시적 인텐트 ) (0) | 2020.04.17 |
[안드로이드] 액티비티 1( 이동 ) (0) | 2020.04.15 |
[안드로이드] 텍스트뷰, 에디트텍스트 ( textView, EditText ) (0) | 2020.04.14 |
[안드로이드] 리싸이클러뷰 4 ( 버튼, 체크박스 연동) (0) | 2020.04.13 |