3
respostas

Aula 4- exer 5- Agenda has stopping

Boa noite. Estou criando este tópico pois, ao tentar rodar minha aplicação, me devolve a mensagem de erro "Agenda has stopping". E eu tenho certeza que segui os videos linha por linha. Desde já grato. Segue o código.

ListaAlunosActivity

insira seu código aqui
```import br.com.alura.agenda.Dao.AlunoDao;
import br.com.alura.agenda.modelo.Aluno;

public class ListaAlunosActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_lista_alunos);

        AlunoDao dao = new AlunoDao(this);
        List<Aluno> alunos = dao.buscaAlunos();
        dao.close();

        ListView listaAlunos = (ListView) findViewById(R.id.lista_alunos);
        ArrayAdapter<Aluno> adapter = new ArrayAdapter<Aluno>(this,
                android.R.layout.simple_list_item_1, alunos);
        listaAlunos.setAdapter(adapter);


        Button novoAluno = (Button) findViewById(R.id.novo_aluno);
        novoAluno.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intentVaiProFormulario = new Intent(ListaAlunosActivity.this,
                        FormularioActivity.class);
                startActivity(intentVaiProFormulario);
            }
        });
    }
}

``` Formulario
insira seu código aqui
```import br.com.alura.agenda.Dao.AlunoDao;
import br.com.alura.agenda.modelo.Aluno;

public class FormularioActivity extends AppCompatActivity {

    private FormularioHelper helper;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_formulario);

        helper = new FormularioHelper(this);

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.menu_formulario, menu);
        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()){
            case R.id.menu_formulario_ok:

                Aluno aluno = helper.PegaAluno();
                AlunoDao dao = new AlunoDao(this);
                dao.insere(aluno);
                dao.close();

                Toast.makeText(FormularioActivity.this, "Aluno " + aluno.getNome() + " salvo!",
                        Toast.LENGTH_SHORT).show();

                finish();
                break;
        }
        return super.onOptionsItemSelected(item);
    }
}

insira seu código aqui ```public class FormularioHelper {

private final EditText campoNome; private final EditText campoEndereço; private final EditText campoTelefone; private final EditText campoSite; private final RatingBar campoNota;

public FormularioHelper(FormularioActivity activity){ campoNome = (EditText) activity.findViewById(R.id.formulario_nome); campoEndereço = (EditText) activity.findViewById(R.id.formulario_endereço); campoTelefone = (EditText) activity.findViewById(R.id.formulario_telefone); campoSite = (EditText) activity.findViewById(R.id.formulario_site); campoNota = (RatingBar) activity.findViewById(R.id.formulario_nota); }

public Aluno PegaAluno() { Aluno aluno = new Aluno(); aluno.setNome(campoNome.getText().toString()); aluno.setEndereço(campoEndereço.getText().toString()); aluno.setTelefone(campoTelefone.getText().toString()); aluno.setSite(campoSite.getText().toString()); aluno.setNota(Double.valueOf(campoNota.getProgress()));

return aluno; } }

3 respostas

Eu só passei o olho rapidamente, pois agora eu não poderia olhar direito. Mas veja esses seus "endereço" com "ç". Tira ele, é caractere especial, coloca um "c". E veja se resolve.

Fico grato pela resposta mas, troquei todos os "ç" por "c" e mesmo assim não funcionou. Tentarei continuar o curso com o arquivo fornecido no começo do modulo Android II, que funcionou.

Importante quando tomar um erro no aplicativo é dar uma olhada em qual Exception ele lançou. Da pra ver no "Android Monitor" na parte de baixo da IDE