Намерение вызвать ошибку

#android

#Android

Вопрос:

При вызове намерения возникает ошибка startActivity (new Intent (this, Advogado1.class)) , как мне поступить, чтобы правильно вызвать это Intent

             AlertDialog.Builder alert = new AlertDialog.Builder(this);

            alert.setTitle("Atenção");
            alert.setMessage("Digite o Numero da OAB");

            // Set an EditText view to get user input
            final EditText input = new EditText(this);
            alert.setView(input);

            alert.setPositiveButton("Ok",
                    new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog,
                                int whichButton) {

                            int oab = Integer.parseInt(input.getText()
                                    .toString());
                            // Do something with value!

                            if (oab == 1) {

                                startActivity(new Intent(this, Advogado1.class));
                            }

                        }
                    });

            alert.setNegativeButton("Cancelar",
                    new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog,
                                int whichButton) {
                            // Canceled.
                        }
                    });

            alert.show();
  

Комментарии:

1. Опубликуйте свой вывод logcat, пожалуйста

Ответ №1:

Вызов для,

 startActivity(new Intent(this, Advogado1.class));
  

не следует использовать ‘this’, он должен использовать,

 startActivity(new Intent(NameOfYourActivity.this, Advogado1.class)); 
  

потому что this ссылается на расширение анонимного класса DialogInterface.OnClickListener , а не на ваш Activity класс. Для намерения требуется, чтобы вызывающий класс был экземпляром Activity.