inflearn logo
강의

Khóa học

Chia sẻ kiến thức

[Cấp độ Trung cấp] Giới thiệu JETPACK thân thiện <Phần 1> (Android Kotlin)

Fragment LiveData / LifeCycleOwner - 2

fragment 이동시 data 초기화

398

Kei

1 câu hỏi đã được viết

0

fragment 1 에서 btn 을 눌러서 plus가 되면 value값이 증가를 하고, 이 증가한 상태에서 fragment 2로 갔다가,

다시 fragment1 을 누르면 이전에 fragment가 나오는게 아니라 새로운 fragment가 생성이 되네요?

transaction할 때 replace를 써서 그런것 같은데,

fragment1 버튼을 누르면 새로운 fragment1이 아닌 기존 생성한 fragment1 화면으로 가는 것은 어떻게 해야 하나요?

android kotlin jetpack

Câu trả lời 1

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다.

replace()는 현재 스택에서 특정 Fragment를 pop하고 해당 Fragment를 추가하는 메소드입니다. 따라서 기존 Fragment가 아니라 새로운 Fragment가 생성됩니다.

해결 방법으로는, Fragment1에서 Fragment2로 이동할 때 Fragment1의 값을 저장하고, Fragment1로 돌아올 때 저장된 값을 불러와 화면에 표시하면 됩니다.

  1. Fragment1에서 값 저장하기
    Fragment1에서 plus 버튼을 클릭할 때마다 값을 저장합니다. 이때 데이터는 ViewModel이나 Bundle 등을 활용해 저장합니다.

  2. Fragment2로 이동할 때 저장된 값 전달하기
    Fragment1에서 Fragment2로 이동할 때 저장된 값을 전달합니다. 이때 Bundle이나 ViewModel 등을 활용합니다.

  3. Fragment1로 돌아올 때 저장된 값 불러오기
    Fragment1로 돌아올 때, 저장된 값을 불러와 화면에 표시합니다. 이때 Bundle이나 ViewModel 등을 활용합니다.

위 방법을 활용하면, Fragment1에서 Fragment2로 이동할 때 마다 화면이 변경되는 것이 아니라 저장된 값으로 이전 Fragment 화면을 복원할 수 있습니다.

참고로, 만약 Fragment1이 Activity에 의해 재생성되는 경우 Bundle이나 ViewModel 등을 활용해 이전 상태를 복원할 수 있습니다.

프로그래밍에 대해 궁금한 점이 있다면 댓글로 질문해주세요. 감사합니다.

dataBinding 시 오류

0

82

2

Retrfit 에러

0

158

2

[Retrofit 간단한 예제 변경 + RecyclerView 추가] 에 databinding 추가해 보았습니다.

1

222

2

Navigation Data Transfer Safe Args 강의중에서

0

275

2

viewModel 초기화 관련 질문드려요

0

290

1

Fragment에서 ViewBinding과 DataBinding 초기화 차이가 궁금합니다.

0

290

1

최상단 변수 선언 관련하여 질문드려요

0

201

1

Retrofit + ViewModelScope + RecyclerView + Glide 강의중에서

0

326

2

Retrofit 간단한 예제 변경 강의중에서

0

311

2

LiveData 와 MutableLiveData 차이강의중에서

0

522

5

Activity/Fragment ViewModel 공유 10분35초경에 fragment 에 viewModel선언

0

222

1

안드로이드 테마 색상 오류

0

248

1

Map / SwitchMap - 2 강의 오류

0

392

1

에러

0

356

1

ViewBinding 질문 있습니다.

2

396

2

CoroutineScope 질문

0

377

1

뷰모델 질문

0

312

1

바인딩 때 xml

0

292

1

코루틴과 workmanager 순서 정하기의 차이점

0

526

1

ViewModel 값

0

299

1

Retrofit 질문입니다.

0

494

1

Activity / Fragment 의 ViewMode 질문있습니다.

0

322

1

2강 질문이씁니다.

0

290

1

Json 형식 데이터 모델 설계 질문드립니다 :)

2

1533

1