private void setBedData() { if (noList != null) { for (Bed b : mBedList) { for (String no : noList) { if (no.equals(b.getNo())) { b.setSelected(true); break; } } } } mGridView.setAdapter( new CommonAdapter<Bed>(this, mBedList, R.layout.item_duty_group_bed) { @Override public void convert(ViewHolder helper, Bed item) { helper.setText(R.id.tv_no, item.getNo()); if (item.isSelected()) { helper.getView(R.id.iv_select).setVisibility(View.VISIBLE); } else { helper.getView(R.id.iv_select).setVisibility(View.INVISIBLE); } } }); mGridView.setOnItemClickListener( new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { ImageView selectView = (ImageView) view.findViewById(R.id.iv_select); if (mBedList.get(position).isSelected()) { selectView.setVisibility(View.INVISIBLE); mBedList.get(position).setSelected(false); } else { selectView.setVisibility(View.VISIBLE); mBedList.get(position).setSelected(true); } } }); }