Android Compose6 Android Compose Slot API란? @Composable 컴포저블 함수란?데이터를 전달받고 UI 요소를 방출 할 수 있는 함수이다. 컴포즈는 명령형이 아닌 선언형 UI를 기본으로한 프레임워크이다.String data를 받아, Text라는 UI를 방출한다.(기존이라면 xml에 View를 만들고 viewbinding 혹은 findViewById로 데이터를 변경해줘야했다.)Slot API란?Slot API 공식문서: https://developer.android.com/develop/ui/compose/layouts/basics#slot-based-layouts어떤 @Composable 함수가 다른 @Composable 함수 or 컴포넌트를 포함할 수 있게 되어있는 것을 Slot API라고 부른다.슬롯은 다들 상상하는 거처럼 뭐랄까 중간에 끼울.. 2024. 8. 12. Composable functions with non-default parameters are not supported in Preview unless they are annotated with @PreviewParameter Compose로 마이그레이션하는 도중, @Preview가 안먹혀서 에러를 확인해봤다. Composable functions with non-default parameters are not supported in Preview unless they are annotated with @PreviewParameter @Composable 함수안에 디폴트 파라미터가 없다면, @PreviewParameter를 달아야 프리뷰를 볼 수 있다는 이야기였다. 이 에러가 뜬 이유는? viewmodel을 파라미터에 넣는 순간 저 에러가 났다. @Composable 함수 파라미터에 viewmodel이 들어오면 제한이 생긴다는 공식문서 내용을 발견했다.안드로이드 컴포즈 프리뷰: https://developer.android.. 2024. 7. 14. XML에서 Compose로 마이그레이션 gradle 세팅하기 (feat. BOM이란?) XML에서 Compose로 초기 세팅을 위해서 해야하는 작업이 몇 가지 있다. 해당 작업을 완료하여야 Compose로 마이그레이션 가능하다.처음부터 빈 Compose App을 만든다면 이 작업은 필요없다. (알아서 이미 세팅되어있음) 1. app 수준의 build.gradle 설정buildFeatures에 compose를 추가해준다.buildFeatures { //... compose true } 2. project 수준의 build.gradle 설정dependencies { //... // Compose def composeBom = platform('androidx.compose:compose-bom:2024.06.00') implementati.. 2024. 7. 14. 선언형이란? UI = f(state)라고도 이야기 함.⇒ f라는 함수에 파라미터로 state를 갖는다. 그 결과값은 UI이다. state가 바뀌면 UI가 바뀐다. 반대로 state가 변하지 않으면 UI는 바뀌지 않는다. React는 선언형 프레임을 만든 장본인. 자바스크립트 프레임워크.React의 선언형 정의인터액티브한 UI를 고통없이 만들게함.앱에서 각 상태의 심플한 뷰를 디자인하면, 데이터가 변경될 때 리액트가 효율적으로 갱신하고 필요한 구성요소만 렌더링함.⇒어떤 UI가 언제 보이는지를 프로그래밍적 방식으로 보는게아니라, 상태가 바뀔때매다 이 상태는 이랗고 저상태는 저런다. 반드시 필요한 상태만 렌더링한다.HTML이나 기존 안드로이드 View 시스템은 선언형 UI 툴킷이라 말하기 어려움. ⇒어떤 경우에는 버튼이 .. 2024. 7. 13. Android 컴포즈를 쓰는 이유는? 1. 안드로이드 버전 변화1.0 (2008년 9월 23일)1.1 Petit Four (2009년 2월 9일)1.5 Cup Cake (2009년 4월 27일)1.6 Donut (2009년 9월 15일)2.0 Eclair (2009년 10월 27일)2.2 Froyo (2010년 5월 20일)2.3 Gingerbread (2010년 12월 6일)3.0 Honeycomb (2011년 2월 22일) Holo4.0 Ice Cream Sandwich (2011년 10월 18일)4.1 Jelly Bean (2012년 7월 9일)4.4 Kitkat (2013년 10월 31일)5.0 Lollipop (2014년 11월 4일) Material6.0 Marshmallow (2015년 10월 2일)7.0 Nougat (2016.. 2024. 7. 13. Android Kotlin Compose Proto DataStore (kotlin dsl) DataStore는 SharedPreference의 대체 class로 보안을 강화한 Jetpack class중 하나이다.디바이스에 data를 처리해줄 수 있는 기능을 제공한다. compose를 이용해서 proto datastore를 이용해 간단한 예제를 연습하려고한다. DataStore로 만들어 볼 예제1. EditText에 text를 입력한다.2. 버튼을 누른다.3. 버튼을 누르면 디바이스에 해당 text가 저장된다. 처음해보는 분들은 내 github를 참고하여 만들어봐도 좋을거같다! https://github.com/kof99athena/TPProtoData GitHub - kof99athena/TPProtoData: 컴포즈를 활용하여 Proto DataStore 사용해보기컴포즈를 활용하여 Pr.. 2024. 7. 7. 이전 1 다음