제목과 같이

 

원래는 getView에서 getView가 호출 될 떄 View를 생성해서 return 시켜주지만

 

View 생성 부분이 좀 빠른 스크롤 시 부담이 되는 것 같아서

 

ArrayList<View> mViews 에다가 보여줄 리스트의 View들을 미리 셋팅 해주고

 

getView 시에는 return mViews.get(position); 요렇게 뿌려주었습니다....

 

물론 각 View의 자식 뷰들에는 각각 다른 역할을 하는 onClickListener가 셋팅 되어 있구요....

 

이게 항상 안되는건 아니고 보통은 잘 되다가

 

가끔씩 클릭을 해도 리스너가 응답하지 않는 것처럼 느껴지는 겁니다... 스크롤은 되는데

 

누르면 반응하지 않습니다... 이때 UI에 변화가 일어나면(토스트, 팝업, 화면전환(onPause) 등등)그때사

 

그때까지 눌렀던 이벤트들이 몰아서 발생하는 겁니다....

 

getView때마다 View를 생성해서 return 해 줄 때는 이런 문제가 없었는데

 

미리 셋팅 해둔 View를 getView에서 return만 시켜주니 클릭 리스너가 오작동 하는 경우가 종종 생기는데....

 

이 문제에 대해 감이 오는게 있는 분이 계신가 해서요...