Compose Column

반응형

    [Android Compose Lists] 1. Compose Column과 ScrollState를 이용해 Scroll View만들기 + 사용법 정리

    Compose의 Lists란 무엇인가? Compose의 Lists란 컴포넌트들을 Scrollable하게 수직 또는 수평으로 배치하는 Composable을 뜻한다. 이를 만들기 위해서는 Column 혹은 Row를 사용할 수 있다. 이번 글에서는 Column을 이용해 Lists를 만드는 작업을 한다. Column을 Lists로 만들기 위해 어떤 작업이 필요한가? Column은 모든 자식 Composable을 수직으로 배치하는 Compose Layout이다. Column을 List로 만들기 위해서는 몇가지 선행 작업이 필요하다. Column을 내부 컴포넌트를 배치하는 작업과 Column의 Modifier을 이용해 Column이 scroll 가능하게 만드는 작업이다. *Column에 Scroll을 결합한 것은 ..

    [Compose Column] horizontal alignment 사용해 정렬하기

    Alignment란? Jetpack Compose의 Alignment란 View의 정렬을 지원해주는 변수이다. 즉, 모든 View가 동일한 x축 혹은 y축을 기준으로 정렬되도록 만드는 변수이다. Column의 Alignment Column의 자식 View들은 수직으로 배치되므로 수평으로 정렬(horizontalAlignemnt)이 지원되는데 수평 정렬은 모든 자식 View들의 x위치가 동일하도록 만들어주는 정렬이다. 따라서 같은 y축 상에서 정렬된다(x값 동일하기 때문). Column에서 사용할 수 있는 Alignment의 종류 Column에서는 Alignment.Horizontal을 상속받는 3가지 Alignment를 사용할 수 있다. Alignment.Start (왼쪽 정렬) Alignment.Cen..

    [Compose Column] vertical arrangement 사용해 배치하기

    Arrangement 란? Jetpack Compose의 Arrangement란 View의 배치(Arrangement)을 지원해주는 변수이다. Column에서는 Arrangement.Vertical을 상속받는 아래 6가지 Arrangement를 사용할 수 있다. Arrangement.Top Arrangement.Center Arrangement.Bottom Arrangement.SpaceBetween Arrangement.SpaceAround Arrangement.SpaceEvenly 아래에서 각각이 어떻게 동작하는지 살펴보자. ColumnArrangement 살펴보기 이 옵션들이 어떻게 보이는지 확인하기 위해 다음과 같이 Preview를 정의한다. @Preview(showBackground = true..

    [Compose Layout] 2. Column 사용법 정리

    Column 내부 살펴보기 Column은 Child Widget이 들어오면 수직으로 배치되는 레이아웃이다. 자 먼저 Column은 어떤 변수를 받을 수 있는지 내부를 살펴보자. @Composable inline fun Column( modifier: Modifier = Modifier, verticalArrangement: Arrangement.Vertical = Arrangement.Top, horizontalAlignment: Alignment.Horizontal = Alignment.Start, content: @Composable ColumnScope.() -> Unit ) { val measurePolicy = columnMeasurePolicy(verticalArrangement, horizo..

    [Android Compose Layout] 1. Column, Row, Box, BoxWithConstraints, ConstraintLayout 의 차이점 살펴보기

    Jetpack Compose 레이아웃 시작하기 Jetpack Compose는 UI를 위한 라이브러리이므로, UI컴포넌트를 화면상에 배치하기 위한 Layout이 존재한다. 만약 Layout을 지정하지 않고 이모지와 텍스트를 써보면 다음과 같이 나타난다. @Preview @Composable fun TestView(){ EmojiView() TitleView() } 우리는 여기에 Column 레이아웃을 추가하여 다음과 같이 바꿀 수 있다. @Preview @Composable fun TestView(){ Column() { EmojiView() TitleView() } } 레이아웃은 위젯을 원하는 위치에 배치시켜 자신이 원하는 뷰를 만들기 위한 필수 사항이다. 자 이제 Compose에는 어떤 레이아웃이 지원..

반응형