7월 정식 출시 예정
지금까지 공개된 내용들을 바탕으로 어떻게 변화할지 알아보자
@Composable
fun JetpackCompose() {
Card {
var expanded by remember { mutableStateOf(false) }
Column(Modifier.clickable { expanded = !expanded}) {
Image(pinterResource(R.drawable.jetpack_compose))
AnimatedVisibility(expanded) {
Text(
text = "Jetpack Compose"
style = MaterialTheme.typography.h2
)
}
}
}
}
Native Android UI를 빌드 하기위한 최신 도구로 2019년 Google IO에서 처음 발표되었다.
적은 수의 코드로 더 많은 작업을 하고 전체 버그 클래스를 방지할 수 있으므로 코드가 간단하며 유지 관리하기 쉽습니다.
UI만 설명하면 나머지는 Compose에서 처리합니다. 앱 상태가 변경되면 UI가 자동으로 업데이트 됩니다.
기존의 모든 코드와 호환되므로 언제 어디서든 원하는 대로 사용할 수 있습니다. 실시간 미리보기 및 완전한 Android 스튜디오 지원으로 빠르게 반복할 수 있습니다.
Android 플랫폼 API에 직접 액세스하고 머티리얼 디자인, 어두운 테마, 애니메이션 등을 기본적으로 지원하는 멋진 앱을 만들 수 있습니다
그러나 무엇보다도 compose의 가장 큰 특징은 layout xml파일을 사용 하지 않는다는 것이다
<TextView
android:id="@+id/textview_first"
android:layout_width="..."
android:layout_height="..."
android:text="Hello, Android"
/>
@composable
fun Greeting() {
Text(text = "Hello, Android!")