Aula 3 - Depois de atribuir o valor da convertView e fazer o if, o primeiro aluno da minha lista, que não tem caminho de foto no banco, aparece na lista com a mesma foto do último aluno da lista. Minha lista tem apenas 7 alunos. Fiz alguns testes para tentar descobrir o que houve, mas só descobri que esse primeiro aluno passa 2 vezes pelo if (os demais passam apenas 1).
@Override
public View getView(int position, View contentView, ViewGroup parent) {
Aluno aluno = alunos.get(position);
LayoutInflater inflater = LayoutInflater.from(context);
View view = contentView;
if(view == null) {
view = inflater.inflate(R.layout.list_item, parent, false);
}
TextView campoNome = (TextView) view.findViewById(R.id.item_nome);
campoNome.setText(aluno.getNome());
TextView campoTelefone = (TextView) view.findViewById(R.id.item_telefone);
campoTelefone.setText(aluno.getTelefone());
ImageView campoFoto = (ImageView) view.findViewById(R.id.item_foto);
String caminhofoto = aluno.getCaminhoFoto();
if(caminhofoto != null) {
Bitmap bitmap = BitmapFactory.decodeFile(caminhofoto);
Bitmap bitmapReduzido = Bitmap.createScaledBitmap(bitmap, 100, 100, true);
campoFoto.setScaleType(ImageView.ScaleType.FIT_XY);
campoFoto.setImageBitmap(bitmapReduzido);
}
return view;
}