일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 230508
- 생명주기
- 함수 인자
- putextra
- parcelable
- classList
- textContent
- ActionBar
- 데이터 타입
- serializable
- DFS
- javascript
- 프래그먼트
- 230510
- C++
- 230503
- ViewPager
- html
- fragment
- Flutter
- 안드로이드
- 인텐트
- Adapter
- DOMContentLoaded
- intent
- null-safety
- querySelector
- string
- Class
- 부가데이터
- Today
- Total
나만의 개발노트
[안드로이드] 부가데이터(putExtra), 플래그(Flag) 본문
부가데이터(putExtra)
: 인텐트에 데이터를 같이 전달 할 수 있는 데이터
- 데이터는 인텐트 안 번들(Bundle)객체에 들어있음
- 데이터를 넣을 때는 putExtra()
데이터를 가져올 때는 get___Extra()
ex) getStringExtra(), getIntExtra(), getBooleanExtra()
플래그(Flag)
: 인텐트에 추가할 수 있는 옵션
[주요 플래그]
- FLAG_ACTIVITY_NEW_TASK
: 액티비티를 관리하는 태스크(TASK) 객체를 새로 만들도록 함
- FLAG_ACTIVITY_SINGLE_TOP
: 동일한 액티비티가 이미 메모리에 만들어져 있다면, 그 액티비티를 재사용 함
- FLAG_ACTIVITY_CLEAR_TOP
: 원하는 액티비티가 이미 메모리에 만들어져 있고 그 후에 다른 액티비티가 만들어진 경우 원하는 액티비티를 찾아
다시 띄울 때 그 이후에 만들어진 다른 액티비티를 없앰
[사용 메소드]
- addFlags()
- setFlags()
[주의할 점]
액티비티를 재사용 할 경우, onCreate()가 호출되지 않아, getIntent()가 호출되지 않음
-> onNewIntent()를 호출해서 인텐트를 전달 받아야 함
[액티비티간 데이터 전달 과정]
1. 액티비티A에서 인텐트 객체를 만들고 putExtra()에 부가데이터를 넣어줌
2. startActivityForResult()를 호출
3. 액티비티B가 실행되고, setResult()를 호출하면서 인텐트 전달
4. finish() 호출되고 액티비티A로 돌아감
5. onActivityResult()가 호출되며 전달받음
[출처]
3-2강
안드로이드 앱 프로그래밍
부스트코스 무료 강의
www.boostcourse.org
'[안드로이드] > [안드로이드] 공부 기록' 카테고리의 다른 글
[안드로이드] 수명주기/생명주기 (LifeCycle), getSharedPreferences() (0) | 2023.10.13 |
---|---|
[안드로이드] Serializable, Parcelable (0) | 2023.10.12 |
[안드로이드] 인텐트(intent) (1) | 2023.10.11 |
[안드로이드] 액티비티(Activity), 인텐트(Intent) - 화면전환 (1) | 2023.10.07 |
[안드로이드] 원형이미지뷰(CircleImageView) (0) | 2023.10.07 |