마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

리사이클러뷰 체크여부 갯수가져오기

0 추천
 

    inner class ItemViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
        fun bind() {
            var item = listItems[adapterPosition]
            itemView.phone_number?.text = item.phone_number
            itemView.item_name?.text = item.item_name
            itemView.special?.text = item.special
            itemView.send_number?.text = item.send_number
            itemView.receive_number?.text = item.receive_number

            itemView.setOnSingleClickListener {
                itemView.checkBox.isChecked = !itemView.checkBox.isChecked
                SLXPrefs.checkBoxCheck = itemView.checkBox.isChecked
                listener?.onClick(adapterPosition, listItems[adapterPosition].toString())
            }
        }
    }

리사이클러뷰의 바인드뷰홀더부분인데 일단 이렇게 해봤는데요..

제가 원하는건 체크가 하나라도 있으면 a 상황 하나도없으면 b상황을 주려고 합니다

저렇게하면 일단 하나체크하고 하나풀면 문제가없지만 2개체크하고 하나만 풀면 false가 나와서 b상황으로 갑니다.. 여기서 어떻게 체크 한 갯수를 가져와야될지 모르겠습니다

익명사용자 님이 2020년 1월 23일 질문

1개의 답변

0 추천

원론적인 방법을 알려드린다면,

우선 각 item들의 checked 정보는 RecyclerViewAdapter가 가지고 있어야합니다.

따라서 ItemViewHolder의 onclick event안에서 adapter에게 전체 checked 상태를 물어보는 과정이 있어야합니다.

디자이너정 (42,810 포인트) 님이 2020년 1월 24일 답변
...