목록전체 글 (152)
시배's Android

CompositionLocal을 사용한 로컬 범위 지정 데이터 | Jetpack Compose | Android Developers CompositionLocal을 사용한 로컬 범위 지정 데이터 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. CompositionLocal은 암시적으로 컴포지션을 통해 데이터를 전달하 developer.android.com Introducing CompositionLocal 보통 Compose에서는 데이터가 매개변수로 각 컴포저블 함수에 따라 UI 트리를 통해 아래로 흐릅니다. 이렇게 하면 컴포저블의 종속성이 명시적으로 드러납니다. 그러나 색상이나 글꼴 스타일과 같이 매우 자주 널리 사용되는 데이터의 경우에는 번거로울 수 있습니다. 다음 예시..

Compose의 시맨틱 | Jetpack Compose | Android Developers Compose의 시맨틱 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 컴포지션은 앱의 UI를 설명하고 컴포저블을 실행하여 생성됩니다. 컴포지션은 UI를 설명하는 developer.android.com 만약 당신의 앱이 Compose foundation 및 material 라이브러리에서 제공하는 composables 및 modifiers로 구성되어 있다면, Semantics 트리는 자동으로 생성되어 채워집니다. 그러나 사용자 정의 저수준 composables를 추가하는 경우에는 수동으로 해당 semantics를 제공해야 할 수 있습니다. 화면의 요소의 의미를 정확하게 또는 완전히 나..
Compose 성능 | Jetpack Compose | Android Developers Compose 성능 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Jetpack Compose의 목표는 처음부터 우수한 성능을 제공하는 것입니다. 이 페이지에서는 최고의 성능 developer.android.com Properly configure your app 만약 앱의 성능이 좋지 않다면, 설정 문제일 수 있습니다. 첫 번째로 확인해야 할 구성 옵션은 다음과 같습니다. Build in release mode and uose R8 성능 문제가 있을 경우 앱을 릴리스 모드로 실행해 보는 것이 좋습니다. 디버그 모드는 많은 문제를 발견하는 데 유용하지만, 성능에 상당한 비용을 부과하며..

Jetpack Compose 아키텍처 레이어링 | Android Developers Jetpack Compose 아키텍처 레이어링 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 이 페이지에서는 Jetpack Compose를 구성하는 아키텍처 레이어와 관련 디자인에 developer.android.com Layers 각 레이어는 낮은 수준에서부터 쌓여져 높은 수준의 구성 요소를 만들기 위한 기능을 조합합니다. 각 레이어는 하위 레이어의 공개 API를 기반으로 구축되며 모듈 간 경계를 확인하고 필요한 경우 어떤 레이어든 교체할 수 있도록 합니다. 이제 아래에서 위로 이러한 레이어들을 살펴보겠습니다. Runtime (런타임) : 이 모듈은 remember, mutableStat..

Jetpack Compose 단계 | Android Developers Jetpack Compose 단계 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 대부분의 다른 UI 도구 키트와 마찬가지로 Compose는 몇 가지 고유한 단계를 통해 프레임을 렌 developer.android.com The three phases of a frame Composition : 어떤 UI를 표시할지 결정합니다. Compose는 구성 가능한 함수를 실행하고 UI의 설명을 생성합니다. Layout : UI를 어디에 배치할지 결정합니다. 이 단계는 측정(measurement)과 배치(placement) 두 단계로 구성됩니다. 레이아웃 요소는 2D 좌표로 자신과 모든 하위 요소를 측정하고 배치..

Orbit + Compose + Pokedex API Android 앱 개발에서 최신 기술인 Orbit와 Compose를 활용하여 Pokedex API를 사용하여 국룰 Pokedex 앱을 구현해보겠습니다. Pokedex GitHub - koreatlwls/Orbit-MVI-Compose-Pokedex: Orbit-MVI-Compose-Pokedex Orbit-MVI-Compose-Pokedex. Contribute to koreatlwls/Orbit-MVI-Compose-Pokedex development by creating an account on GitHub. github.com Paging3를 활용하여 Infinite Scroll을 구현하였습니다. Room과 Retrofit2를 활용하여 네트워크를..
State and effect use cases LaunchedEffect L run suspend functions in the scope of a composable LaunchedEffect가 구성에 진입하면 코드 블록과 함께 코루틴을 실행합니다. LaunchedEffect가 구성을 떠나면 해당 코루틴은 취소됩니다. LaunchedEffect가 다른 키와 함께 재구성되는 경우, 기존의 코루틴은 취소되고 새로운 suspend 함수가 새로운 코루틴에서 실행됩니다. @Composable fun MyScreen( state: UiState, snackbarHostState: SnackbarHostState ) { // If the UI state contains an error, show snackbar ..
Compose 수정자 | Jetpack Compose | Android Developers Compose 수정자 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 수정자를 사용하면 컴포저블을 장식하거나 강화할 수 있습니다. 수정자를 통해 다음과 같은 종 developer.android.com Compose modifiers modifiers는 구성 요소를 꾸미거나 보강하는 데 사용됩니다. modifiers를 사용하면 다음과 같은 작업을 수행할 수 있습니다: 구성 요소의 크기, 레이아웃, 동작 및 모양 변경 접근성 레이블과 같은 정보 추가 사용자 입력 처리 클릭 가능하게 만들거나 스크롤, 드래그, 확대/축소 등과 같은 상위 수준 상호작용 추가 modifiers는 표준 Kotli..