현재 퀴즈 진행 페이지의 구조는
LazyColumn {
…
HorizontalPager{
…
Column/Lazy Column
{
}
}
}
위에 코드
로 표시된 부분에 Column을 넣어야 하는가? Lazy Column을 넣어야 하는가에 대한 의문이 생겼다.
정확히 얘기하면
Column 대신 Lazy Column을 넣었을 때 어떤 이득이 있는가?
정도로 얘기할 수 있겠다.
이중 스크롤로 화면을 구성하려면 높이 제한이 필요하다.
높이 제한을 두지 않고 스크롤 안에 스크롤을 배치하면 앱이 바로 죽어버린다.
아래처럼 높이 제한을 다르게 뒀을 때 조금씩 다른 방식으로 스크롤 되는 모습을 확인할 수 있다.
Screen_recording_20241111_203313.mp4
Screen_recording_20241111_203625.mp4
Screen_recording_20241111_203751.mp4
결국 중요한 건 한 화면의 기준인데, LazyColumn의 height가 900.dp여서 화면에 보이지 않으면 그리지 않는 건가?
결론적으로 확인할 수 있는건 내 화면에 보이지 않더라도 화면에 그리고 있다는 것이다.
→ 크기를 왕창 늘려서 화면에서 보이지 않아도 LazyColumn은 그리고 있다!
현재 QuestionScreen 구조에서 Question에는 Column을 사용해도 차이가 없다고 결론지을 수 있겠다.
<aside> ✏️
LazyColumn이 화면에 보이는 것만 그리고 있다고 하는데, 내 화면에 보이지 않으면 그게 화면에 보이지 않는 상태인가? 여기서 의문이 들어 약간의 예시와 함께 알아봤습니다. 글을 그렇게 잘 쓰는 편도 아니고 해서 연습할 겸 간단하게 한 번 적어봤어요~
</aside>