state
[Compose] ViewModel, State
컴포즈에서의 ViewModel 버튼을 클릭하였을 때 원래 있던 텍스트가 다른 텍스트로 변경되는 프로그램을 구현하였을 때 생명주기를 고려하지 않는다면 다음과 같이 구현할 수 있다. // val data = remember{mutableStateOf("Hello")} Button(onClick = { // data.value = "World" //눌러도 변경이 안됨. //변경이 되면 컴포즈가 다시 리셋이되어 hello가 계속 나옴 //따라서 리멤버 사용 만일 remember를 사용하지 않는다면 눌러도 변경이 안되는 것을 확인할 수 있다. 왜냐하면 변경이 되어도, 다시 컴포지션이 발생하여 리셋이 되어 원래 있던 Hello가 계속 나오게 된다. 이를 해결하기 위해 이전에 있던 상태를 기억하기 위해 위의 코드처럼..
[Compose] Image, Card, State
Compose 전 글에서 포스팅 했던 내용중에 Box태그가 있었다. 이번 글에서는 위와 같은 뷰를 카드 뷰 안에 Box태그를 두개 넣어 image와 하트 아이콘을 넣어보자! setContent { var isFavorite by rememberSaveable{ //remember가 기억을 해주는 형태 mutableStateOf(false) } //이미지 카드를 여러 개 사용하고, 재사용할 수 있음 ImageCard( modifier = Modifier .fillMaxWidth(0.5f) .padding(16.dp), isFavorite = isFavorite ){ favorite -> isFavorite = favorite //값을 갱신함 } } @Composable fun ImageCard( modif..