안드로이드 컴포즈를 위한 커스텀 상태 관리 함수를 만드는 방법 – @Composable/Android
클래스를 만들고 생성자를 private로 선언을 해주어서 외부 접근이 불가능하도록 한다.
class DragDropState private constructor() {
private var dragOffset by mutableStateOf(0)
...
}
이후, rememberXXX 함수를 companion object로 만들어서 함수를 직접 호출할 수 있도록 만들어주면 된다.
class DragDropState private constructor() {
private var dragOffset by mutableStateOf(0)
companion object {
@Composable
fun rememberDragDropState(): DragDropState {
return remember { DragDropState() }
}
}
}