bean类 Item的所有属性都封装起来
public class util { private Integer img; private String gender; private String single; private Integer image_gender;//对号 private Integer image_single; private boolean flag;//选中状态 public Integer getImg() { return img; } public void setImg(Integer img) { this.img = img; } public String getGender() { return gender; } public void setGender(String gender) { this.gender = gender; } public String getSingle() { return single; } public void setSingle(String single) { this.single = single; } public boolean isFlag() { return flag; } public void setFlag(boolean flag) { this.flag = flag; } public Integer getImage_gender() { return image_gender; } public void setImage_gender(Integer image_gender) { this.image_gender = image_gender; } public Integer getImage_single() { return image_single; } public void setImage_single(Integer image_single) { this.image_single = image_single; } public util(Integer img, String gender, String single, boolean flag, Integer image_gender, Integer image_single) { this.img = img; this.gender=gender; this.single=single; this.flag=flag; this.image_single=image_single; this.image_gender=image_gender; } }
MainActivity添加数据
ListView lv= (ListView) findViewById(R.id.lv); List<util> img_list=new ArrayList<>(); for (int i=0;i<20;i++){ img_list.add(new util(R.mipmap.ic_launcher,"男","单身",false,R.drawable.a,R.drawable.a)); } lv.setAdapter(new MyAdapter(MainActivity.this,img_list));
Adapter中:
public class MyAdapter extends BaseAdapter{ private Context context; private List<util> img_list; //自定义变量 private int a=0; public MyAdapter(Context context,List<util> img_list){ this.context=context; this.img_list=img_list; } @Override public int getCount() { return img_list.size(); } @Override public Object getItem(int position) { return img_list.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(final int position, View convertView, ViewGroup parent) { ViewHolder holder=new ViewHolder(); if(convertView==null){ convertView=View.inflate(context,R.layout.item,null); holder.iv= (ImageView) convertView.findViewById(R.id.iv); holder.gender= (Button) convertView.findViewById(R.id.gender); holder.single= (Button) convertView.findViewById(R.id.single); holder.gender_iv= (ImageView) convertView.findViewById(R.id.gender_iv); holder.single_iv= (ImageView) convertView.findViewById(R.id.single_iv); convertView.setTag(holder); }else{ holder= (ViewHolder) convertView.getTag(); } holder.iv.setImageResource(img_list.get(position).getImg()); holder.gender.setText(img_list.get(position).getGender()); holder.single.setText(img_list.get(position).getSingle()); holder.gender_iv.setImageResource(img_list.get(position).getImage_gender()); holder.single_iv.setImageResource(img_list.get(position).getImage_single()); // holder.gender.setTag(position);//绑定 根据id找此控件 // holder.single.setTag(position); final ViewHolder finalHolder = holder; holder.gender.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // Button gender= (Button) v; // int position=(int)finalHolder.gender.getTag(); if(img_list.get(position).getGender().equals("男")){ img_list.get(position).setGender("女"); img_list.get(position).setImage_gender(R.drawable.p); }else{ img_list.get(position).setGender("男"); img_list.get(position).setImage_gender(R.drawable.a); } notifyDataSetChanged(); } }); holder.single.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // Button single= (Button) v; if(img_list.get(position).getSingle().equals("单身")){ img_list.get(position).setSingle("已婚"); img_list.get(position).setImage_single(R.drawable.p); }else{ img_list.get(position).setSingle("单身"); img_list.get(position).setImage_single(R.drawable.a); } notifyDataSetChanged(); } }); return convertView; } class ViewHolder{ ImageView iv; Button gender; Button single; ImageView gender_iv; ImageView single_iv; } }