한번 정리하고 넘어가는게 좋을거같아서 ~\_~이것저것 일단 적어보는데 길어질 거 같습니다 ㅎ.ㅎ......MVP 패턴을 사용할 때, API를 호출하고 그 결과를 가져오는 상황을 생각해봅시다.이 경우, 다음 문제를 갖게 됩니다.View-Presenter 간 높은 결합도V
LiveData가 뭔지, 어떻게 사용하는지에 대해 글을 작성해보겠습니다 🤓Android Jetpack 라이브러리의 기능 중 하나인 LiveData가 뭔지 알아보겠습니다!Observable한 lifecycle-aware 데이터 홀더 클래스View(Observer)에서
안드로이드 - ContentProvider캘린더와 연동되는 앱\-> ContentProvider 사용매니페스트 내 퍼미션 추가ContentValues 구성 \- calendar_id: foreign key로, 현재 이벤트가 등록될 캘린더를 지정자기 전, 내일 일정 짜
안드로이드 - DiffUtil: 두 리스트를 비교해 첫번째 리스트를 두번째 리스트로 전환하는 utility classRecyclerView Adapter에서 업데이트 시 사용할 수 있음두 리스트의 차이점을 찾아 업데이터 되어야 할 목록을 반환 해 줘 RecyclerVi
hh루트뷰가 필요코드로 다음과 같이 rootView 제공 setContentView(rootView))그림?: measure -> layout -> draw measure(int widthMeasureSpec, int heightMeasureSpec): 뷰의 크기를 알
https://proandroiddev.com/constraintlayout-vs-other-layouts-a-battle-towards-performance-part-1-14d8116e876e
다국어앱, 화면회전 관려 port, land xml을 만들면서 들었던 궁금증. 어떻게 앱은 알맞는 리소스를 가져올까? 대충 디바이스에서 정보를 받아와서 맞는 리소스를 가져오겠지~ 생각했다. 실제로 어떻게 가져오는지 알아봤다.안드로이드는 여러 특정 디바이스의 config
안드로이드 시스템은 main thread에서 app 구성요소(Button, CheckBox, TextView 등의 UI도구 키트구성요소) 생성 및 조작을 진행한다. 그래서 main thread를 UI Thread라고 부르기도 한다!UI 도구 키트는 thread-safe
https://medium.com/%EB%B0%95%EC%83%81%EA%B6%8C%EC%9D%98-%EC%82%BD%EC%A7%88%EB%B8%94%EB%A1%9C%EA%B7%B8/%EC%A7%80%EC%9B%90%EC%9E%90-95-%EA%B0%80-%E
이걸 디자인패턴에 넣을까,, 안드로이드에 넣을까,, 하다가 안드로이드에 넣습니다!개발하고 있는 앱의 구조를 휘리릭 바꿔버렸어요. MVVM 구조를 따라서 개발을 하고있는데(따른다고 따르고 있었는데;) 개발을 하면 할수록 이 구조가 맞나,,? 싶더라구요. 공부를 더 해보니
https://medium.com/android-dev-hacks/detailed-guide-on-android-clean-architecture-9eab262a9011
전 포스팅에서 클린 아키텍처를 알아봤다. 이제 안드로이드에서 그 원칙을 어떻게 적용할 수 있을지 알아보자.안드로이드 앱의 특성에 맞게 레이어를 위와 같이 구분한다.Presentation LayerUI(activity, fragment)를 포함하며 한 개 이상의 유스케이
Prensentation layer의 MVP, MVVM 패턴을 알아보자
뷰모델은 액티비티보다 긴 생명주기를 가진다. 따라서 이를 이용해 Configuration 변경 시(onDestroy() -> onCreate()) UI 상태값을 저장하고 다시 화면에 보여줄 수 있다.위 그림에서 확인할 수 있듯, 액티비티의 onDestroy() 이후에
한정된 수의 뷰를 유지해 큰 데이터 집합을 표시하는 컨테이너ViewHolder 패턴을 사용해 View를 재활용함RecycledViewPool에서 현재 쓰이지 않는 View를 관리화면에 보이는 수 정도의 itemView만 만들어 놓고 scroll되며 안보이게 된 item
Observable한 lifecycle-aware 데이터 홀더 클래스보통 View
공식문서를 읽고 정리한 글입니다!한 Activity 또는 Process에서 다른 Activity를 시작하고 그 결과를 받아올 수 있다. 기존에는 Activity 클래스에서 제공하는 startActivityForResult(), onActivityResult() API가