我正在使用下面的自定义适配器在列表视图中显示textview和checboxes。 现在如果textview是selectAll单击checbox在它的列表中,我应该选择列表中下面的所有复选框。 在我的案例中,selectall复选框将位于“0”位置,其他位于下方。
任何人指导我如何获得所有复选框数组,以便我可以选择或取消选择它们。 任何帮助,将不胜感激。
public class EfficientAdapter extends BaseAdapter implements
Filterable {
private LayoutInflater mInflater;
//private Context context;
List<DalCategories> obj;
public EfficientAdapter(Context context,List<DalCategories> value) {
mInflater = LayoutInflater.from(context);
obj = value;
//this.context = context;
}
public View getView(final int position, View convertView,
final ViewGroup parent) {
ViewHolder holder;
convertView = mInflater.inflate(R.layout.list_category_item, null);
holder = new ViewHolder();
holder.TextTitle = (TextView) convertView.findViewById(R.id.list_item_title);
holder.checkBoxes = (CheckBox) convertView.findViewById(R.id.chkSubCategory);
if(obj.get(position).isIs_Selected())
{
holder.checkBoxes.setChecked(true);
}
holder.checkBoxes
.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(
CompoundButton buttonView, boolean isChecked) {
if(select_all == true)
{
// select all here........
}
}
});
convertView.setTag(holder);
holder.TextTitle.setText(obj.get(position).getTitle());
return convertView;
}
class ViewHolder
{
public TextView TextTitle;
public CheckBox checkBoxes;
}
@Override
public Filter getFilter() {
return null;
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public int getCount() {
return obj.size();
}
@Override
public Object getItem(int position) {
return obj.get(position);
}
}`enter code here`