Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Problemas com Java NullPointerException (Aula 4.1)

Pessoal, estou com problemas para preencher minha aplicação. Ao tentar buscar o nome do Aluno no cadastro da um erro de NullPointerException. O Android studio aponta a seguinte classe:

public class FormularioHelper {
    private EditText campoNome;
    private EditText campoEndereco;
    private EditText campoTelefone;
    private EditText campoSite;
    private RatingBar campoNota;

    public FormularioHelper(FormularioActivity activity) {
        this.campoNome = (EditText) activity.findViewById(R.id.campo_nome);
        this.campoEndereco = (EditText) activity.findViewById(R.id.campo_endereco);
        this.campoTelefone = (EditText) activity.findViewById(R.id.campo_telefone);
        this.campoSite = (EditText) activity.findViewById(R.id.campo_site);
        this.campoNota = (RatingBar) activity.findViewById(R.id.campo_nota);
    }

    public Aluno getAluno() {
        Aluno aluno = new Aluno();
        aluno.setNome(campoNome.getText().toString());
        aluno.setEndereco(campoEndereco.getText().toString());
        aluno.setTelefone(campoTelefone.getText().toString());
        aluno.setSite(campoSite.getText().toString());
        aluno.setNota(Double.valueOf(campoNota.getProgress()));
        return aluno;
    }
}

E o erro na IDE é o seguinte:

java.lang.NullPointerException: Attempt to invoke virtual method 'android.text.Editable android.widget.EditText.getText()' on a null object reference
            at br.com.home.agenda.FormularioHelper.getAluno(FormularioHelper.java:27)
            at br.com.home.agenda.FormularioActivity.onOptionsItemSelected(FormularioActivity.java:33)

Alguém consegue me ajudar a descobrir o que fiz errado?

4 respostas

Oi Bruno, pode mostrar o código da sua Activity?

abs

Bruno dê uma olhada na classe FormularioActivity, no método onOptionsItemSelected(... ) linha 33 se está tudo certo, se estiver nos informe qual é a linha 27 dessa sua classe FormularioHelper pois não tem como identificar nesse código. Aguardamos, abr.

solução!

Não sei o que eu deixei de preencher. Mas refiz a aula e deu certo. Mesmo assim obrigado.

Bruno pode ser que você tenha esquecido de implementar o Serializable na classe principal. Se conseguiu não esqueça de marcar o tópico como resolvido. Abr.

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