안드로이드/Compose

안드로이드/Compose

[Android] Compose 성능 최적화

컴포저블의 수명 주기Compose에서 컴포저블은 UI의 상태와 변경 사항을 효율적으로 관리하기 위해 특정한 수명 주기를 따릅니다.초기 Composition 시, Compose는 처음으로 컴포저블을 실행하고, UI를 구성하기 위해 호출된 컴포저블을 추적합니다.앱 상태가 변경되면 Compose는 Recomposition을 예약하여 상태 변경 사항을 반영하고 UI를 업데이트합니다.Composition컴포저블 함수가 처음 호출되어 UI 트리를 구성할 때 발생합니다.컴포저블 함수는 컴포지션 과정에서 호출되어 UI 요소를 생성합니다.RecompositionUI 상태가 변경될 때 컴포저블 함수가 다시 호출되어 UI를 업데이트하는 과정입니다.상태(State)가 변경되면 Compose는 관련된 컴포저블 함수들을 다시 호..

안드로이드/Compose

[Android] Compose - 아키텍처

Compose UI 설계  |  Jetpack Compose  |  Android Developers이 페이지는 Cloud Translation API를 통해 번역되었습니다. Compose UI 설계 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Compose의 UI는 변경할 수 없습니다. UI를 설developer.android.com ViewModel ViewModel은 UI 데이터를 관리하고, 데이터의 변경 사항을 관찰할 수 있도록 합니다. Compose 및 기타 라이브러리  |  Jetpack Compose  |  Android Developers이 페이지는 Cloud Translation API를 통해 번역되었습니다. Compose 및 기타 라이브러리 컬렉션을 사..

안드로이드/Compose

[Android] Compose - 부수 효과

부수 효과 (Side Effect)부수 효과는 Composable 함수의 범위 밖에서 일어난 앱의 상태(State) 변경을 처리하는 데 필요합니다.일반적으로 Composable에는 부수 효과가 없는 것이 이상적이지만, 부수 효과가 필요한 경우들이 있습니다.단일 실행 이벤트 (변경사항이 State로 관리될 필요가 없는 경우)애니메이션 처리외부 시스템과의 상호작용컴포넌트 라이프사이클 관리데이터 로드 및 네트워크 요청이때, Effect API를 사용하여 부수 효과가 예측 가능하게 실행되도록 보장해야 합니다. Compose의 부수 효과  |  Jetpack Compose  |  Android Developers이 페이지는 Cloud Translation API를 통해 번역되었습니다. Compose의 부수 효과 ..

안드로이드/Compose

[Android] Compose - Animation

AnimationAnimation은 사용자 경험을 향상시키고, 앱의 인터페이스를 더 직관적이고 반응적으로 만드는 데 중요한 역할을 합니다. Compose의 애니메이션  |  Jetpack Compose  |  Android DevelopersCompose의 애니메이션은 사용하기 쉬우며 앱에서 훌륭한 상호작용을 제공합니다.developer.android.com 나타나거나 사라지는 애니메이션AnimatedVisibility 함수를 사용하면 visible 속성에 넣은 값에 따라 컴포저블을 숨기거나 표시할 수 있습니다. 애니메이션 수정자 및 컴포저블  |  Jetpack Compose  |  Android Developers이 페이지는 Cloud Translation API를 통해 번역되었습니다. 애니메이션 수..

안드로이드/Compose

[Android] Compose - ConstraintLayout

ConstraintLayoutConstraintLayout은 화면에 다른 컴포저블을 기준으로 컴포저블을 배치할 수 있는 레이아웃입니다.여러 중첩된 Column, Row, Box, BoxWithConstraints 등 대신 사용할 수 있습니다. 뷰 시스템에서는 ConstraintLayout이 크고 복잡한 레이아웃을 만드는 데 권장되는 방법이었지만, Compose에서는 이미 깊은 레이아웃 계층 구조를 효율적으로 처리하기 때문에 필수적이지 않습니다.따라서, 다음의 시나리오에서 ConstrainLayout을 사용하는 것을 권장하고 있습니다.코드 가독성 개선을 위해 여러 중첩된 레이아웃 대체다른 컴포저블을 기준으로 컴포저블 배치GuideLine, Chain, Barrier를 기반으로 컴포저블 배치 Compose의..

안드로이드/Compose

[Android] Compose - Lazy layout

Lazy layout이전까지 데이터를 리스트 형태로 화면에 표시하고 싶을 때, RecyclerView를 사용하여 나타냈습니다.XML에 RecyclerView 생성data class 생성item.xml 생성RecyclerView Adapter와 ViewHolder 생성그러나 Compose에서는 Lazy layout을 사용하면 간단하게 짧은 코드로 같은 기능을 구현할 수 있습니다.Lazy layout은 화면에 표시되는 아이템들만 동적으로 렌더링하고, 화면에서 벗어난 아이템들은 메모리에서 제거하여 성능을 최적화합니다. 이를 통해 대용량의 데이터를 다룰 때 효율적으로 처리할 수 있습니다. 목록 및 그리드  |  Jetpack Compose  |  Android Developers이 페이지는 Cloud Trans..

안드로이드/Compose

[Android] Compose 컴포넌트 - Image

ImageImage를 사용하면 화면에 그래픽을 표시할 수 있습니다.다음 세 가지 옵션을 통해 Image를 사용할 수 있습니다.painter: Painter : 이미지 리소스를 그리는 데 사용되며, 주로 painterResource 함수를 통해 리소스를 로드합니다.bitmap: ImageBitmap : 비트맵 이미지를 나타내며, 주로 loadImageBitmap 함수를 통해 리소스를 로드하고 asImageBitmap()을 사용하여 변환합니다.imageVector: ImageVector : 벡터 이미지를 나타내며, 주로 Material Icons에서 가져오거나 사용자 정의 벡터 이미지를 정의합니다. androidx.compose.foundation  |  Android Developersandroidx.co..

안드로이드/Compose

[Android] Compose 컴포넌트 - Material Design

ButtonButton은 Surface 영역과 Row 영억으로 나눌 수 있습니다.Surface 영역은 버튼의 배경색과 스타일, 유저와의 상호작용을 담당합니다.Row 영역은 버튼 내부에 보여줄 컴포저블에 대한 설정을 담당합니다. Common buttons – Material Design 3Buttons help people take action, such as sending an email, sharing a document, or liking a comment.m3.material.io 버튼  |  Jetpack Compose  |  Android Developers이 페이지는 Cloud Translation API를 통해 번역되었습니다. 버튼 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저..

damon-911
'안드로이드/Compose' 카테고리의 글 목록