반응형
서론
마지막 TLDR 개발일지인 Summarize ViewModel 구현입니다.
선택한 키워드를 어떻게 관리하는지 고민한 내용을 다룹니다.
TLDR 앱 출시도 완료했으니 많은 관심 부탁드려요.
키워드 ViewModel
TLDR 앱에는 선택한 키워드를 TextView에 하이라이트 해주는 기능이 있습니다.
이 기능때문에 선택한 키워드를 Collection으로 관리해줘야 했어요.
Array로 할지 Set으로 할지 고민을 했는데 중간 위치 원소의 빠른 삭제를 위해 Set으로 구현을 했습니다.
선택한 키워드 모델입니다.
prevIndex는 전체 선택과 전체 해제를 구분할 때 사용하는 프로퍼티이고,
insert와 remove를 할 때 프로퍼티에 직접 접근하지 않도록 메서드를 이용해 구현해줬어요.
위의 메서드를 사용해서 ViewModel에서는
키워드를 선택하면 index를 전달해 Set에 아이템을 추가합니다.
키워드를 선택 해제하면 키워드를 찾아서 해당 아이템을 삭제합니다.
마무리
마지막 개발일지인데 크게 작성할 내용이 없어서 머쓱하네요 ㅎㅎ;
그래도 긴 개발일지를 꾸준히 봐주신 분들 감사합니다.
코드나 성능을 더 개선할 부분이 있을지 계속 검토하고 업데이트해야겠습니다.
감사합니다!
아직은 초보 개발자입니다.
더 효율적인 코드 훈수 환영합니다!
공감과 댓글 부탁드립니다.
반응형