Minha Activity fecha ao clicar no botão

1 resposta
android
D

Alguem me ajuda a achar o erro pf!

package br.com.example.dyanlucas.mangas;



import android.content.Intent;
import android.database.Cursor;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;
import android.widget.Toast;
import bancodedados.bancoDados;
import controller.mangacrtl;
import model.Manga;


public class MainActivity extends AppCompatActivity {

    private ListView lstManga;
    private Button novo;
    private Button listar;

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        novo = (Button) findViewById(R.id.button6);
        listar = (Button) findViewById(R.id.button7);
        novo.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent i = new Intent(MainActivity.this, InsereDado.class);
                startActivity(i);
            }
        });
        listar.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent i = new Intent(MainActivity.this, consulta.class);
                startActivity(i);
            }
        });
    }

    public class consulta extends AppCompatActivity {
            private ListView lista;
            protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.consultar_list);

                mangacrtl crud = new mangacrtl(getBaseContext());
                final Cursor cursor = crud.carregarDados();
                String[] nomeCampos = new String[]{bancoDados.D, bancoDados.NOME};
                int[] idViews = new int[]{R.id.idManga, R.id.nomeManga};

                SimpleCursorAdapter adaptador = new SimpleCursorAdapter(getBaseContext(),
                        R.layout.activity_main, cursor, nomeCampos, idViews, 0);
                lista = (ListView) findViewById(R.id.lstManga);
                lista.setAdapter(adaptador);

                lstManga = (ListView) findViewById(R.id.lstManga);
                lstManga.setAdapter(adaptador);
                lstManga.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                    @Override
                    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

                        String codigo;
                        cursor.moveToPosition(position);
                        codigo = cursor.getString(cursor.getColumnIndexOrThrow(bancoDados.D));
                        Intent intent = new Intent(MainActivity.this, Alterar.class);
                        intent.putExtra("codigo", codigo);
                        startActivity(intent);
                        finish();

                    }


                });

            }
        }

    public class InsereDado extends AppCompatActivity {

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

            Button botao = (Button) findViewById(R.id.button);

            botao.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    mangacrtl crud = new mangacrtl(getBaseContext());


                    EditText nome = (EditText) findViewById(R.id.editText);
                    EditText descricao = (EditText) findViewById((R.id.editText2));
                    EditText valor = (EditText) findViewById(R.id.editText3);

                    Manga mangas = new Manga();
                    mangas.setNomeManga(nome.getText().toString());
                    mangas.setDecricaoManga(descricao.getText().toString());
                    mangas.setValorManga(Double.parseDouble(valor.getText().toString()));

                    String resultado;

                    resultado = crud.inserirDados(mangas);

                    Toast.makeText(getApplicationContext(), resultado, Toast.LENGTH_LONG).show();
                }
            });

        }
    }

    public class Alterar extends AppCompatActivity {
        EditText nome;
        EditText descricao;
        EditText valor;
        Button alterar;
        Button deletar;
        Cursor cursor;
        mangacrtl crud;
        String codigo;

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

            codigo = this.getIntent().getStringExtra("codigo");

            crud = new mangacrtl(getBaseContext());

             nome = (EditText) findViewById(R.id.editText);
             descricao = (EditText) findViewById((R.id.editText2));
             valor = (EditText) findViewById(R.id.editText3);

            alterar = (Button)findViewById(R.id.button);

            cursor = crud.carregarId(Integer.parseInt(codigo));
            nome.setText(cursor.getString(cursor.getColumnIndexOrThrow(bancoDados.NOME)));
            descricao.setText(cursor.getString(cursor.getColumnIndexOrThrow(bancoDados.DESCRICAO)));
            valor.setText(cursor.getString(cursor.getColumnIndexOrThrow(bancoDados.VALOR)));

            alterar.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {

                    Manga mangas = new Manga();
                    mangas.setNomeManga(nome.getText().toString());
                    mangas.setDecricaoManga(descricao.getText().toString());
                    mangas.setValorManga(Double.parseDouble(valor.getText().toString()));

                    crud.alterarManga(mangas);
                    Intent intent = new Intent(Alterar.this,consulta.class);
                    startActivity(intent);
                    finish();
                }
            });

            deletar.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    crud.excluirManga(Integer.parseInt(codigo));
                    Intent intent = new Intent(Alterar.this,consulta.class);
                    startActivity(intent);
                    finish();
                }
            });

        }
    }









}

1 Resposta

J

Qual erro ela envia no log?

O problema está na outra activity. O que deve fazer é executar no cel. ou emulador e deixar a caixa de aviso de erro aberta enquanto verifica o log. Se possível, posta-la.

Dica:

  • Esqueceu do maiúsculo, consulta.class,
  • nomei seus botões, button6. Faço desta maneira, tipo_layout_tipo, btn_main_button
  • Este tipo de chamada para onClick, se tiver algum erro, você só vai saber em tempo de execução.
Criado 30 de maio de 2017
Ultima resposta 30 de mai. de 2017
Respostas 1
Participantes 2