개요저번 글에는 Compose의 Layout에 대해서 다뤄봤습니다.사실 SubComposeLayout을 다루기 위해서 먼저 Layout을 다뤄본 것입니다.즉 SubComposeLayout을 이해하기 위해선 Compose의 Layout 과정을 숙지하고 있어야 합니다. [Android] - Jetpack Compose Layout취업 이후 첫 글인 것 같네요.개발 실력이 모자라 배우느라 바쁘기도 했지만, 개발 외적으로 회사의 프로세스를 적응하고 이해하는데 많은 시간을 쏟고 있는 요즘입니다. 최근엔 서서히 적응을jja2han.tistory.com단순한 레이아웃은 기본 제공 컴포저블(Row, Box, Column)이나 Layout 함수만으로 충분히 구현할 수 있습니다.하지만 하위 레이아웃의 크기나 상태에 따라 ..
개요compose navigation을 활용해서 프로젝트를 진행 중인데요, 생각보다 보일러 플레이트 코드가 많이 발생하더라고요.그래서 어떻게 구조를 바꿀 수 있을까 하다가 KSP를 활용해서 Navigation 코드를 자동화하는 라이브러리를 찾게 되었고, 적용해 봤습니다.Compose Destinations설명Compose Destinations는 Jetpack Compose를 위한 Type-Safe Navigation을 제공하는 라이브러리입니다.해당 라이브러리에서 강조하는 점은 Compose Navigation의 복잡함과 보일러플레이트 코드를 크게 줄여준다는 점입니다. 첫 Stable 한 버전은 1.9.50으로, 23년 10월 자 라이브러리이다.https://github.com/raamcosta/com..
취업 이후 첫 글인 것 같네요.개발 실력이 모자라 배우느라 바쁘기도 했지만, 개발 외적으로 회사의 프로세스를 적응하고 이해하는데 많은 시간을 쏟고 있는 요즘입니다. 최근엔 서서히 적응을 하고 있고, 마인드맵 프로젝트부터 관심이 있었던 Custom Layout을 Jetpack Compose에선 어떻게 구현하고 있을지 궁금했고, 그에 관한 내용을 적어볼까 합니다. Jetpack Compose Layout을 설명하기 전 CustomLayout을 만들기 위해서 View(Xml)에선 어떻게 하고 있었을까요?과거(Xml)class CustomLayout(context: Context) : ViewGroup(context) { override fun onMeasure(widthMeasureSpec: Int, h..
어쩌다? 프로젝트가 끝난지는 오래되었지만, 규모가 큰 기능을 새로 만들기보다는 기존의 프로젝트에 대해 의미있는 개선을 하자는것이 팀의 생각이었고, 저도 그렇게 생각했습니다. 프로젝트 시작 전 짧게나마 Compose를 경험해보고 편하고, 재미있다라는 생각이 들었지만, 실제 프로젝트에 적용하기에는 조금 무리가 있어서 XML로 개발을 했었습니다. Compose 공부를 하자하자 했지만, 저는 특정 목적을 가지고 공부를 하는편이라 손이 잘 안가는것이 현실이었습니다,, ㅎㅎ 그러다 운이 좋게도 팀원분께서 Compose로 마이그레이션하자고 제안해주셔서 이번 프로젝트에서 맡았던 부분을 Compose로 바꿔보았고, 그에 대한 느낀점? 경험을 적어볼까 합니다. 주관적으로 느낀점이고, 코드도 정답인 코드는 아닌점 확인해주세..
이번글은 Jetpack Compose에 관한 글입니다. 현재 안드로이드 기술에서는 UI를 구현하기 위한 기술로 Xml과 Jetpack Compose 두 가지가 있습니다. Xml은 전통적인 방식으로 예전부터 사용했던 방식이고, Jetpack Compose는 떠오르는 신기술입니다. 그렇다면 왜 Xml이 아닌 새로운 방식의 기술이 등장했고, 도입하려고 하는 것인지, 그리고 제가 느낀 점에 대해서 적었습니다. Jetpack Compose란? Jetpack Compose는 네이티브 UI를 빌드하기 위한 Android의 최신 툴킷 공식문서에서 Compose를 채택해야 하는 이유는 다음과 같이 정의합니다. 간단한 코드 이전까지의 xml 방식에서는 Kotlin과 Xml을 번갈아가면서 작업을 했습니다. 하지만 Compo..