본문 바로가기

AAC

(2)
[안드로이드] activityViewModels를 활용해 Activity와 Fragment끼리 ViewModel 공유하기 구글 Material Design Component를 다루는 토이 프로젝트에서 BottomNavigationView를 다루는 Activity가 있었는데, 여기에서 각 탭을 선택할 때 보여지는 Fragment 내에 존재하는 버튼을 눌렀을 때, Activity의 뷰에 들어가 있는 BottomNavigationView의 뱃지를 업데이트 하고 싶었다. 이를 구현하기 위해서는 기존에 by viewModels 코틀린 Delegation을 활용해 주입했던 ViewModel을 Activity에 우선 주입하고, 이를 Fragment에서 activityViewModels Delegation으로 주입해주어야 했다. 이 코틀린 Delegation을 활용하기 위해서는 아래의 라이브러리가 그래들에 선언되어야 한다. // 20년 ..
[안드로이드 | JSON] Json 파일 Parsing해 List로 만들기 프로젝트 리소스에 포함된 Json 파일을 불러와 List로 만들 일이 생겼다. 이 과정을 위해 해준 일들을 우선 나열해보면 4단계 정도가 있다. 1. 프로젝트에 Assets 폴더를 만들고 불러오고자 하는 json 파일을 집어넣는다. 2. GSON 라이브러리 및 Room Database import 3. Json 파일로부터 만들고자 하는 Data class를 정의 (3-1) 필요한 경우에 따라 TypeConverter 추가 정의 4. Json 파일을 String 객체로 Parsing > Gson 사용해 List 뽑아내기 Json Parsing을 위해 Gson과 AAC의 Room을 사용했다. 그러면 1번부터 쭉 밟아보자. 1. 프로젝트에 Assets 폴더를 만들고 불러오고자 하는 json 파일을 집어넣는다...