Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

ConvertView não está limpando o ImageView (Outras fotos aparecem em contatos sem fotos).


public View getView(int position, View convertView, ViewGroup parent) {
        //Pega aluno de uma determinada posição
        Aluno aluno = alunos.get(position);

        LayoutInflater inflater = LayoutInflater.from(context);
        View view = convertView;
        if( convertView == null ) {
            //Infla xml ( view )
            view = inflater.inflate(R.layout.list_item, parent, false);
        }

        //Busca campo nome
        TextView campoNome = (TextView) view.findViewById(R.id.item_nome);
        //Atribui nome
        campoNome.setText(aluno.getNome());

        //Busca campo Telefone
        TextView campoTelefone = (TextView) view.findViewById(R.id.item_telefone);
        //Atribui Telefone
        campoTelefone.setText(aluno.getTelefone());

        //Busca campo da Foto
        ImageView campoFoto = (ImageView) view.findViewById(R.id.item_foto);
        String caminhoFoto = aluno.getCaminhoFoto();

        if( caminhoFoto != null ) {
            Bitmap bitmap = BitmapFactory.decodeFile(caminhoFoto);
            Bitmap bitmapCroop = Bitmap.createScaledBitmap(bitmap, 200, 100, true);
            campoFoto.setImageBitmap(bitmapCroop);
            campoFoto.setScaleType(ImageView.ScaleType.FIT_XY);
        }

        return view;
    }
1 resposta
solução!

Oi Leandro, tudo bem ?

O que está acontecendo é que quando você está reaproveitando a View é o seguinte, se o aluno que estava utilizando a view pela primeira vez possuisse foto, ela seria carrega e exibida, certo ? Agora quando você reaproveita essa View e o aluno não possui foto você não está tendo nenhum tratativa para isso.

Você precisa apenas certificar que se ele tiver foto faça o carregamento e se não tiver coloque uma imagem padrão.

Isso deve resolver seu problema !

Abraços