리사이클러뷰 헤드 클릭시 아이템변경
조회수 1617회
리사이클러뷰로 그림과같이 구현을 할려고 하는데요
헤드버튼을 누르면 아이템 내용이 기존에 있던 아이템은 gone되고 새로운 아이템이 visible되고 헤드 이름도 바뀌게 되구요
푸터를 누르면 모든 목록이 다 보이게 하는 화면을 구성하려고 하는데
화면구성까지는 어찌어찌 되고 버튼 클릭시 이름이 바뀌게하는것까진 되는데
아이템을 어떻게 변경시켜줘야 할지 풋터를 누르면 모든목록을 어떻게 불러올지 감이 잡히질 않네요
어떻게 하면 될까요 ㅠㅠ
1 답변
-
헤드버튼을 클릭할 때, 특정 아이템을 visible/gone 처리를 하기위해서는 모델에 관련 정보가 필요합니다. 예를 들면 아이템 모델에 type이라는 필드가 있고, 헤드버튼이 토글됐다면 타입이 1번인 아이템들은 뷰를 gone, 2번인 아이템들은 뷰를 visible로 처리하는 방식입니다. 그렇기 때문에 아이템 모델에 헤드버튼을 클릭할 때 마다 이들을 분류할 수 있는 정보가 존재해야 합니다. 이 정보가 있으면 리사이클러뷰의 onBindViewHolder()에서 헤드버튼의 상태에 따라 뷰 visible/gone 처리를 하면 됩니다.
푸터버튼을 클릭 했을 때도 위의 방식을 응용할 수 있습니다. onBindViewHolder()에서 푸터버튼이 토글(활성화) 되어 있으면 헤드버튼의 상태 여부와 상관없이 모든 아이템 뷰를 visible 처리하면 원하는 구현을 만들 수 있습니다.
-
(•́ ✖ •̀)
알 수 없는 사용자
-
댓글 입력