일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 코루틴
- android
- 프로그래머스
- ProGuard
- GitHub
- Coroutine
- relay
- 암호학
- Codeforces
- 코드포스
- pandas
- boj
- MiTweet
- TEST
- Coroutines
- Gradle
- architecture
- androidStudio
- Hilt
- Rxjava
- livedata
- 백준
- NGINX
- Python
- textfield
- MyVoca
- 쿠링
- Compose
- Kotlin
- AWS
- Today
- Total
목록Primary/Compose (30)
이동식 저장소
Composition 단계에서 UI 트리의 내용을 옮길 수 있다면 많은 이득을 얻을 수 있다. Recomposition 과정 속에서 composable을 다시 만들지 않고 그대로 옮김으로써 내부 상태를 보존할 수 있기 때문이다. 다음 코드를 보자. @Composable fun MyApplication() { if (Mode.current == Mode.Landscape) { Row { Tile1() Tile2() } } else { Column { Tile1() Tile2() } } } ``Mode``의 값이 바뀌면 ``Tile1()``과 ``Tile2()`` 내부의 모든 값이 초기화된다. 하지만 tile 두 개를 하나의 composition 묶음으로 생각하면 어떨까? @Composable fun MyA..
Compose는 여러 단계를 거쳐 UI를 그린다. Android View 시스템에서는 measure, layout, drawing 세 단계를 거쳐 UI를 그린다. Compose도 비슷한 방법으로 UI를 그리지만, 맨 앞에 composition이라는 아주 중요한 과정이 추가된다. UI를 그리는 3단계 (UI phases) Composition: UI가 무엇을 그릴지 결정한다. Compose는 이 단계에서 composable 함수를 실행하여 UI 트리를 만든다. Layout: UI 요소들의 크기와 위치를 결정한다. 크기를 결정하는 과정은 measurement, 위치를 결정하는 과정은 placement라고 한다. UI 트리의 노드(=composable)들은 자신과 자식 노드의 크기와 좌표를 결정한다. Draw..
Google의 샘플 앱 중 하나인 sunflower를 간단히 리뷰한다. ``compose`` 브랜치 기준으로 작성하였다. GitHub - android/sunflower: A gardening app illustrating Android development best practices with Android Jetpack. A gardening app illustrating Android development best practices with Android Jetpack. - GitHub - android/sunflower: A gardening app illustrating Android development best practices with Android Jetp... github.com 이미지 ..
정말 좋은 글이다. 일독을 권한다. Jetpack Compose Stability Explained Have you ever measured the performance of your composable and discovered it is recomposing more code than you expect? “I thought Compose… medium.com 요약하면 Composable의 모든 매개변수가 immutable 또는 stable하다면 해당 composable은 skip될 수 있다. 어떤 composable이 skip되지 않아 성능상의 문제가 발생한다면, 먼저 unstable한 매개변수가 있는지 확인하자. 그래도 잘 모르겠다면 Compose compiler의 보고서를 참고해 보자. ``Li..
커스텀 뷰에 익숙하지 않은 사람은 먼저 이 글을 읽어보자. 맞춤 레이아웃 | Jetpack Compose | Android Developers 맞춤 레이아웃 Compose에서 UI 요소는 호출될 때 UI 요소를 내보내는 구성 가능한 함수로 표시됩니다. 그런 다음 화면에 렌더링되는 UI 트리에 추가됩니다. 각 UI 요소에는 하나의 상위 요소와 여러 developer.android.com 목표 위 사진처럼 $N$개의 요소를 가로 방향이 아닌 세로 방향으로 배치하는 그리드를 만들어 보자. 행(column)의 수 $col$, 가로방향 간격, 세로방향 간격은 주어진다고 가정한다. 해야 할 일 Measure Children 모든 ``measurable``를 ``measure``하여 ``placeable``을 얻는다..