得到ListView 滾動的狀態(回收機制)處理
ListView滾動時內容穢亂跳
這時使用setViewBinder 來監聽ListView 是否被移動
而被移動 判斷其內容是否符合我們的設定值
list.setViewBinder(new ViewBinder() {
@Override
public boolean setViewValue(View view, Object data,String textRepresentation) {
view = (View) view.getParent(); //因為預設View抓到的是TextView 所以取得父類別在抓到CheckedTextView
for(int i = 0; i < item_time.size(); i++){
if(data.toString().equals(item_time.get(i)) && selectList.size() > 0){
CheckedTextView chkItem = (CheckedTextView) view.findViewById(R.id.skip);
//這段判斷目前的CheckedTextView是否為被選取的如果是則固定背景為此圖
if(Integer.parseInt(selectList.get(0)) == i ){
chkItem.setBackgroundResource(R.drawable.btn_inuse);
chkItem.setChecked(true);
}else{
chkItem.setBackgroundResource(R.drawable.btn_available);
chkItem.setChecked(false);
}
}
}
return false;
}
});
沒有留言:
張貼留言