본문 바로가기

fragment

(3)
Notification에 Content Intent 추가하기 Notification을 클릭했을 시 실행될 화면 추가하기. 목표 사용자가 Notification을 클릭하면 해당 Task의 AddEditTaskFragment 화면으로 실행한다. Content Intent 추가시키기 사용자가 Notification을 클릭했을 때 실행될 화면을 등록하는 란이 Content Intent이다. Notification Action들과 마찬가지로 PendingIntent를 추가시킬 수 있다. 차이점은 Action에서는 Broadcast를 PendingIntent형태로 만든 것을 추가 시켰고, ContentIntent는 App의 스크린 중 하나에 접근하기 위해서 Activity를 PendingIntent 형태로 만든 것을 추가시킨다. PendingIntent contenetInt..
Fragment에 리스트 출력하기 Part.2 앞에서 인터페이스를 사용해서 이미 생성된 Fragment에게 데이터를 전달하는 방법을 구현해보았다. 하지만 그것보다 간단하게 같은 기능을 수행하도록 할 수 있다. 우리에게는 이미 Activity와 Fragment가 공유하고 있는 ViewModel 영역이 있다. ViewModel은 Activity보다 긴 생명주기를 가지고 View 간에 데이터를 공유하기 위한 목적을 가지고 있다. ViewModel에 Filter라는 라이브데이터를 추가하고 Activity에서 메뉴를 선택 시에 LiveData에 값을 포스트하고 TaskListFragment는 Filter를 관찰하고 있다가 변화를 감지했을 때 리스트를 바꾸어 업데이트하면 된다. 새로운 인터페이스 정의도 필요없고, 복잡한 형변환도 필요없다. 이미 구현된 뷰모델이..
Fragment에 리스트 출력하기 Part.1 요구사항 다시 짚어보기 이번에 구현하려고 하는 기능은 Fragment에 RecyclerView를 사용해서 데이터를 리스트 형태로 출력하는 것이다. 이때 메뉴 선택에 따라 리스트에 담길 데이터의 내용이 달라질 수 있다. Fragment + RecyclerView라는 구성의 XML 뷰라는 동일한 틀을 가지고 여러 개의 스크린을 보여줄 수 있어야 한다. 현재 1 Activity - Mutiple Fragments 구성을 사용하고 Navigation을 위해 Navigation Component를 사용해보려고 한다. 데이터의 종류는 Activity에 속해있는 Navigation Drawer의 메뉴 선택에 따라 결정된다. 즉 Drawer의 메뉴를 선택 시에 다른 내용의 리스트를 출력하는 것이 목표이다. 접근법 #1..