리사이클러뷰 헤드 클릭시 아이템변경

조회수 1617회

이미지

리사이클러뷰로 그림과같이 구현을 할려고 하는데요

헤드버튼을 누르면 아이템 내용이 기존에 있던 아이템은 gone되고 새로운 아이템이 visible되고 헤드 이름도 바뀌게 되구요

푸터를 누르면 모든 목록이 다 보이게 하는 화면을 구성하려고 하는데

화면구성까지는 어찌어찌 되고 버튼 클릭시 이름이 바뀌게하는것까진 되는데

아이템을 어떻게 변경시켜줘야 할지 풋터를 누르면 모든목록을 어떻게 불러올지 감이 잡히질 않네요

어떻게 하면 될까요 ㅠㅠ

1 답변

  • 좋아요

    2

    싫어요
    채택 취소하기

    헤드버튼을 클릭할 때, 특정 아이템을 visible/gone 처리를 하기위해서는 모델에 관련 정보가 필요합니다. 예를 들면 아이템 모델에 type이라는 필드가 있고, 헤드버튼이 토글됐다면 타입이 1번인 아이템들은 뷰를 gone, 2번인 아이템들은 뷰를 visible로 처리하는 방식입니다. 그렇기 때문에 아이템 모델에 헤드버튼을 클릭할 때 마다 이들을 분류할 수 있는 정보가 존재해야 합니다. 이 정보가 있으면 리사이클러뷰의 onBindViewHolder()에서 헤드버튼의 상태에 따라 뷰 visible/gone 처리를 하면 됩니다.

    푸터버튼을 클릭 했을 때도 위의 방식을 응용할 수 있습니다. onBindViewHolder()에서 푸터버튼이 토글(활성화) 되어 있으면 헤드버튼의 상태 여부와 상관없이 모든 아이템 뷰를 visible 처리하면 원하는 구현을 만들 수 있습니다.

    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)