Loading...
2024. 6. 4. 00:13

[Compose Study] State 다루기

* 화면에 표시되는 내용이 변경된다면 State를 활용해야 한다.* ViewModel에서 mutableState은 읽기와 쓰기가 가능한 타입이고 그냥 State은 읽기만 가능한 타입이다. * 먼저, State를  다루는 방법엔 여러가지가 있는데 1, 3번째 방식은 앞에서 정리한 내용이기도 하다.1번째 방법은 그냥 MutableState 타입으로 다루는 것이다. 3번째 방법은 구조분해를 사용하여 text(getter 역할), setText(setter 역할)로 나누어 다룬다. 아래처럼 TextField에 (value = text, onValueChange = setText)로 텍스트 변경이 가능하다. 구조분해에서 text는 val로 선언되어 있기 때문에 String을 수정하려면 setText("변경") 이..

2024. 5. 28. 21:03

[Compose Study] 구조분해

* 단순히 TextField를 띄우고 글을 입력하고, 아래 버튼을 띄우는 코드이다. * 여기서 textValue = remember { mutableStateOf("") } 쪽을 구조분해를 사용해 볼 예정이다.   textValue를 MutableState으로 선언하고 MutableState 내부 코드로 들어가보면 아래와 같은   interface라는 것을 알 수 있다. value와 component1, component2. * 따라서 textValue를 아래와 같이 text, setValue로 분해할 수 있다. text는 String 형태,   setValue는 (String) -> Unit 형태이다. * 그러므로 아래쪽 TextField에 value = text, onValueChange에는 setV..

2024. 5. 28. 00:09

[Compose Study] Card, Image 2 - 상태 저장

* Image 오른쪽 위에 하트를 누를 때마다 하트이미지가 바뀌는 상태를 저장해야 한다.* 기존 kotlin에서는 상태저장 변수(boolean 등)을 만들어 저장했지만, compose에서는 상태를 기억하는 방법에는 remeber를 사용하는 방법이 있다. remeber를 사용하고 mutableState로 변수를 선언해주면 된다. (기본값: false)val isFavorite = remember { mutableStateOf(false) }* 타입을 보면 MutableState타입으로 되어있다. isFavorite안에 boolean 값이 저장되는 그 상태를 remeber가 기억해주는 형태이다.  state가 변경되면 UI가 다시 그려지게 된다. * 하트 아이콘을 눌렀을 때 value가 바..