작성
·
1.3K
답변 1
1
어댑터나 홀더가 ViewModel의 인스턴스를 가지고 있는 것은 추천하지 않습니다.
안드로이드의 ViewModel은 특히 생명주기와도 밀접해서 이와 관계없는 어댑터나 홀더가 ViewModel의 인스턴스를 가지고 있을 때 잠재적으로 메모리 해제가 안 되거나 하는 문제가 있을 수도 있을 것 같습니다.
ViewModel에서 관리하는 데이터만 어댑터에 전달하는 것이 맞고요.
어댑터에서 특정 상황에 ViewModel을 조작하고 싶다면 콜백을 구현해서 조작하시면 됩니다.
감사합니다 callBack은 제가 좀더 공부를 해야 할거 같아서.. 인터페이스로 따로 처리를 해보려고 합니다. Adapter에서 viewmodel에 접근하면 안되는 이유까지 친절하게 설명해주시고 너무 감사드립니다