【发布时间】:2015-08-23 15:10:30
【问题描述】:
我有一个带有 ImageView、TextView 和 CheckBox 的自定义 ListViewAdapter。
当我选择特定的复选框并向下滚动时,向后滚动后,复选框将被取消选中。
我尝试了几个答案,但似乎没有任何效果。
这是我的代码:
public class ListViewAdapterDrawer extends ArrayAdapter<String> {
ImageView imageViewSensor;
TextView textViewSensor, textViewLogging;
CheckBox checkBoxSensor;
private boolean[] itemChecked;
int count;
public ListViewAdapterDrawer(Context context, String[] sensorArray) {
super(context, R.layout.adapter_listview_drawer, sensorArray);
itemChecked = new boolean[sensorArray.length];
for (int i = 0; i < this.getCount(); i++) {
itemChecked[i] = false;
}
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
if (convertView == null) {
LayoutInflater inflater = LayoutInflater.from(getContext());
convertView = inflater.inflate(R.layout.adapter_listview_drawer, parent, false);
}
imageViewSensor = (ImageView) convertView.findViewById(R.id.imageViewSensor);
textViewSensor = (TextView) convertView.findViewById(R.id.textViewSensor);
checkBoxSensor = (CheckBox) convertView.findViewById(R.id.checkBoxSensor);
checkBoxSensor.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (checkBoxSensor.isChecked()){
itemChecked[position] = true;
}else {
itemChecked[position] = false;
}
}
});
checkBoxSensor.setChecked(itemChecked[position]);
return convertView;
}
}
【问题讨论】:
标签: android listview checkbox android-listview android-custom-view