이 글은 컴포즈 네비게이션 2.7 버전을 기준으로 작성됐다.
네비게이션을 쓰다가 startDestination 로 시작하는 화면에서 바로 argument 를 전달하고 싶을수도 있다.
처음 시작하는 화면에서 쓰이고 있는 hiltViewModel 에서 SavedStateHandle 에 argument 로 던진 데이터를
viewModel 이 시작될때부터 가지고 있어야하는 상황이라던가 그럴때 말이다.
그런데 argument 를 startDestination 경로에 넣으면 SavedStateHandle 에서 값을 가져오질 못한다.
정확하게 찾진 못했는데 startDestination 는 정적인 경로만 등록이 가능하다는거 같다.
이때 arguments 를 등록하는 곳에 defaultValue 를 전달하고자 하는 값을 적어주면 SavedStateHandle 에서 해당 값을 가져올 수 있다.
아래 글을 참고했다.
반응형
'Android > Android Compose' 카테고리의 다른 글
Compose + AGSL 셰이더를 이용해서 간지나는 카드 애니메이션 만들기 (0) | 2024.10.31 |
---|---|
안드로이드 compose 비트맵으로 캡쳐하기 (3) | 2024.09.02 |
Android Compose 의 @Immutable 와 @Stable (0) | 2024.08.20 |
컴포즈의 Side-Effect 형제들에 대해서 알아보자 - 2 (0) | 2024.04.28 |
컴포즈의 Side-Effect 형제들에 대해서 알아보자 - 1 (0) | 2024.04.21 |
Jetpack Compose CompositionLocal 에 대해 알아봅시다 (0) | 2024.03.31 |
스와이프 삭제 구현 (0) | 2024.03.10 |
[안드로이드 컴포즈] 스와이프 삭제 구현 (1) | 2024.01.14 |