Android Compose LaunchedEffect doesn't work
사용 언어: Kotlin 1.9.0
사용 버전: Android Studio Hedgehog 2023.1.1
안드로이드 컴포즈 LaunchedEffect doesn't work를 알아보겠습니다.
LaunchedEffect는 Coroutine을 이용하여 UI를 업데이트할 때 사용합니다.
key parameter의 값이 변화하면 계속해서 추적하는 그러한 함수입니다.
그런데, 이게 제 예상과는 다르게 업데이트가 되지 않는 겁니다.
한 번 보시죠.
보면, 진행바가 진행되는 동안 recomposition이 일어나지 않는 것을 알 수 있습니다.
분명 해당 class는 castleUiState에서 추적되고 있는데 말이죠.
해당 progressbar는 location 값으로 작동합니다.
위의 코드를 아래처럼 변경해 줍니다.
화면을 다시 그리는 recomposition을 발동시키기 위해서는 변화하는 값을 State로 만들 필요가 있습니다. 그 부분을 놓친 것이 문제였습니다.
실행해 봅시다.
LuanchedEffect가 잘 작동하는 것을 확인할 수 있습니다.
참고 프로젝트
끝.
카테고리: Android, Compose
댓글
댓글 쓰기
궁금한 점은 댓글 달아주세요.
Comment if you have any questions.