본문 바로가기
Android/기타

StateFlow<MutableList<Object>> 에 추가, 삭제 하는 법

by 안스 인민군 2022. 12. 16.

stateflow의 value를 바꿔본 적은 있지만 한개씩 추가해본적은 없었는데 아래와 같은 방법을 사용하자!!

예시로

    private val _editerChattingList = MutableStateFlow<MutableList<CHAT_LIST_ITEM>>(mutableListOf())
    val editerChattingList: StateFlow<MutableList<CHAT_LIST_ITEM>>
        get() = _editerChattingList

위와 같이 있을 경우

    fun onEditerChattingList(item: CHAT_LIST_ITEM) {
        _editerChattingList.value = _editerChattingList.value.toMutableList().also { list ->
            if (list.contains(item)) list.remove(item) else list.add(item)
        }
    }

위와 같이 넣어주면 된다!!