1
resposta

Sobre o atributo context do construtor do adapter

Olá, tudo bem?

Durante o curso foi mostrado que para inflar a view personalizada no ListView precisamos do context da activity, eu fiz uma pesquisa e reparei algumas pessoas usando o context do ViewGroup que é passado como parâmetro no método getView. Segue o exemplo:

public class ListaAlunosAdapter extends BaseAdapter {
    // ...
    @Override
    public View getView(
        int position,
        View view, 
        @NonNull ViewGroup viewGroup) {

        View vw = LayoutInflater
                .from(viewGroup.getContext())
                .inflate(R.layout.item_aluno, viewGroup, false);

        Aluno aluno = alunos.get(position);

        ((TextView)vw.findViewById(R.id.item_aluno_nome)).setText(aluno.getNome());
        ((TextView)vw.findViewById(R.id.item_aluno_telefone)).setText(aluno.getTelefone());

        return vw;
    }
    // ...
}

Dessa forma não precisaria de um construtor que recebe esse context, teria algum problema com essa abordagem?

1 resposta

Anderson, de boa?

Cara essa abordagem é melhor e super recomendada!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software