2014-10-25 5 views
7

RecyclerView을 구현했으며 CAB을 사용하도록 설정했습니다. 그러나 선택한 항목을 어떻게 강조 할 수 있습니까? 내가 확인한 특정 위치가 SparseBooleanArray에 저장되어있는 경우. 내 첫 번째 생각은 내 ViewHolder에있는 모든 요소를 ​​포함하는 특정 View을 저장 한 다음 onBindViewHolder에 배경을 어떻게 든 설정합니다. ?android:attr/activatedBackgroundIndicator 어떻게 할 수 있습니까? 그게 유용한 접근인가?RecyclerView : 선택한 항목 강조 표시

+1

이 문제가 해결 되었습니까? – MDragon00

답변

3

내가 마지막으로 단순히 몇 가지 사소한 것들을 추가하여이 문제를 해결 : 그런 다음 RecyclerView 단순히 전화에 대한

android:background="?android:attr/activatedBackgroundIndicator" 

을 : 모든

첫째, 항목 RecyclerView의을 배경으로 사용할 필요가 : setSelected(true); 개별보기.

+0

전체 코드를 써주시겠습니까? 그것은 나를 위해 작동하지 않았다 – suku

+0

@ 폴 Woitaschek 당신이 그것을 해결하는 방법을 어떤 코드를 제공 할 수 있습니까? –

+0

@PaulWoitaschek 작동하지 않았습니다. – Sam

1

View 자체를 변경하려면 adapter.notifyItemChanged (position)를 전달해야하며 대신 리사이클 뷰는 onBind 메소드를 호출하여 백그라운드를 설정할 수 있습니다.

보기 자체를 업데이트 할 필요가없는 경우 아이템 데코레이터를 사용하는 것이 좋습니다.

+1

뷰 자체를 업데이트 할 필요가 없다는 의미입니까? 아이템 데코레이터가있는 뷰에서 단일 아이템을 어떻게 장식합니까? android : attr/activatedBackgroundIndicator를 사용하여 배경을 어떻게 설정할 수 있습니까? –

관련 문제