안드로이드 학습(Compose)

LazyColumn, LazyRow의 특징 및 사용

리저브콜드브루 2025. 3. 4. 18:06
728x90
반응형

LazyColumn, LazyRow 특징

  • 스크롤 가능한 리스트
    • 내부적으로 Cloumn, Row과 비슷, 스크롤 기능이 내장
    • 별도의 ScrollView 없이 리스트 생성 가능
  • 지연(Lazy) 로딩 최적화
    • 화면에 보이는 항목만 렌더링 하며, 보이지 않는 항목은 자동으로 제거: 메모리 절약
    • 많은 데이터가 있어도 성능 저하 없이 부드러운 스크롤 제공
  • 성능 최적화 (RecyclerView 대체)
    • 기존 RecyclerView와 달리 어댑터, ViewHolder 설정이 필요 없음
    • item()을 사용하여 리스트를 쉽게 구성
  • Composable UI 요소 배치 가능
    • 내부에 item()을 사용하여 다양한 UI 요소를 추가할 수 있음

예시

import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.lazy.items
// ...

@Composable
private fun Greetings(
    modifier: Modifier = Modifier,
    names: List<String> = List(1000) { "$it" }
) {
    LazyColumn(modifier = modifier.padding(vertical = 4.dp)) {
        items(items = names) { name ->
            Greeting(name = name)
        }
    }
}

 

결과

 

728x90
반응형

'안드로이드 학습(Compose)' 카테고리의 다른 글

목록에 애니메이션 적용  (0) 2025.03.05
기기 회전과 상태 유지  (0) 2025.03.04
상태 호이스팅  (0) 2025.03.04
Compose에서의 상태  (0) 2025.03.04
열과 행 만들기  (0) 2025.03.04