# JetpackCompose

Jetpack Compose로 Pressed State 만들기
xml에서 pressed 상태가 되었을때, 색깔을 바꾸는것은 2가지 방법으로 가능하다. 1\. xml을 통해 state가 pressed 상태일때의 색을 설정하여 xml을 background로 지정 2\. view 위에 같은 크기의 view를 덮어씌워 색을 opac
ActivityResult
appCompat 최신 버전에서 onActivityResult 가 deprecate 되어Compose 에서 rememberLauncherForActivityResult() 라는 메소드를 사용하게 되었다.Compose 에서 rememberLauncherForActivit
Android Material Date Picker setting min, max date
MaterialDatePicker 의 setCalendarConstraints() 메소드CalendarConstraints 의 setValidator() 메소드를 사용한다.DateValidatorPointBackwardDateValidatorPointForward달력의

SnackBar
SnackBar이렇게 생긴 것이 스낵바(Snack Bar)이다.다른 것 필요 없이 단순히 사용법만 알면 무지성으로 사용 가능하다.CustomSnackBar.kt verticalFraction은 모든 화면에 대해서 fillMaxWidth()를 쓸 수 없기 때문에 적었다

Android & Compose
새로운 마음으로 새로운 시리즈를 시작합니다. Compose를 사용하여 Android app을 만드는 일을 하면서 공부한 것, 추가로 일 하면서 문제를 파악하고 해결했던 것, 새로운 기술들에 대해서 기록해나가봅니다. 화이팅!

오류: Cannot invoke setValue on a background thread
LiveData를 쓰던 와중 이런 오류를 받음읽어보면 setValue를 쓰지 말라고 함해결법은 setValue대신 postValue를 쓰면 됨 문제코드해결코드

Textfield customizing 따라하기
이미지 출처: https://dribbble.com/shots/1730719-Login-form따라한 모습코드 색상 theme/Color.kt
Coil을 활용한 외부 이미지 가져오기
공식 DOC -> https://coil-kt.github.io/coil/compose/나의사랑
Splash Screen
Splash Screen은 앱을 켰을 때 가장 먼저 짧게 보여주는 화면입니다. WatchaPedia 앱을 예로 들면, 앱을 가장 처음 켰을 시WatchaPedia_Splash_Screen이런 화면이 약 1.5~2초간 나오게 되는데, 그 화면이 바로 Splash Scre

Jetpack Compose : Coil Async Image Load Library
implementation("com.google.accompanist:accompanist-coil:0.15.0")rememberImagePainter()
Jetpack Compose : Tab Layout + View Pager
Implement Library implementation "com.google.accompanist:accompanist-pager:0.12.0" Tab Layout + View Pager SpaceBetween 잠깐 팁. Row()에서 horizontalArra
Jetpack Compose : remember, mutableStateOf
메모리에 로컬 상태를 저장한다mutableStateOf() 에 전달된 값이 업데이트 될 때마다 이 state를 사용하는 컴포저블과 하위 요소는 재구성(recomposition) 한다.장문의 텍스트를 ellipsis로 숨겼다가 보여주는 토글 버튼 만들기.boolean 값
Jetpack Compose : Navigation
composable() 메소드로 시작 경로와 라우트를 정의한다.'slug' 라는 string 타입의 argument 를 사용하여 HomeDetail로 이동하는 예제BottomBar() 의 네비게이션과 상세 화면으로 이동하기 위한 예제.네비게이션 규모가 커질수록 NavG
Jetpack Compose : LiveData, Flow
build.gradle\[app] 에 runtime-livedata 추가observableAsState() 로 state 를 관찰하여 가져온다.