Ich war nach dem Tutorial here eine Liste von Kontrollkästchen zu machen, und mein Adapter sieht wie folgt aus:Android Listview-Recycle-Mechanismus
private class ViewHolder{
CheckBox name;
}
@Override
public View getView(final int position, View convertView, final ViewGroup parent) {
ViewHolder holder = null;
LayoutInflater settingInflater = LayoutInflater.from(getContext());
if (convertView == null) {
convertView = settingInflater.inflate(R.layout.custom_row, parent, false);
holder = new ViewHolder();
holder.name = (CheckBox) convertView.findViewById(R.id.checkBox1);
convertView.setTag(holder);
holder.name.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
CheckBox cb = (CheckBox) v;
CustomCheckbox theCheckbox = (CustomCheckbox) cb.getTag();
Toast.makeText(getContext(),
"Clicked on Checkbox: " + cb.getText(),
Toast.LENGTH_SHORT).show();
Log.e(TAG,Integer.toString(position));
});
}else{
holder = (ViewHolder)convertView.getTag();
}
}
Es gibt etwa 15 Einträge auf meinem Bildschirm, wenn ich diese Ansicht begonnen, aber wenn Ich scrolle nach unten und wähle die 16. Checkbox, ihre Position geht wieder auf Null zurück, und die folgenden Einträge werden dementsprechend zu 1, 2, 3 .... usw. Wie implementiere ich den Halter, damit ich für jeden die richtige Positionsnummer bekommen kann Kontrollkästchen?
Danke !!
Sie die Positionen von Einsen müssen halten haben, die in einem überprüft wurden Liste – tyczj