1
내 응용 프로그램 프로젝트에서 RecyclerViews
을 사용하고 있으며 View
이 재활용되면 분명히 청취자를 유지합니다.리사이클 된 뷰에서`OnClickListeners`을 어떻게 제거 할 수 있습니까?
나는 방법 onViewRecycled()
@Override
public void onViewRecycled(MyViewHolder holder) {
super.onViewRecycled(holder);
holder.imageId.setOnClickListener(null);
}
에서 리스너를 제거하기 위해 시도했지만 작동하지 않았다.
더 이상의 아이디어 ...?
처음에 'OnClickListener'를 어디에 설정합니까? 위치에 따라 바뀌는'View' 속성은'onBindViewHolder()'메소드에서 설정되어야합니다. –
@MikeM. 나는 onBindViewHolder() 메서드에서 설정하고 있습니다. –
글쎄, 아마도'View'가'OnClickListener'를 다시 가지고있는 이유 일 겁니다. 재활용 된 후에 다시 사용할 준비가되기 위해'onBindViewHolder()'에 전달 될 것입니다. 그 방법으로 무조건 리스너를 설정하면 그 이유가됩니다. –