Как исправить ошибку «не удается разрешить конструктор»? - PullRequest
0 голосов
/ 25 ноября 2018

Я пытаюсь создать диалоговое окно с положительным дном, которое меняет активность с SignupAcitvity на MainActivity.Поэтому я использовал метод намерения, чтобы сделать это.Однако, как только я попробовал это, я получил следующее сообщение об ошибке: Cannot Resolve constructor 'Intent(com.androidcodefinder.loginscreendemo.Profile.ExampleDialogue, java.lang.Class<com.androidcodefinder.loginscreendemo.MainActivity>)'.Можете ли вы помочь мне исправить это?

Мой код:

public class ExampleDialogue extends AppCompatDialogFragment {
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        LayoutInflater inflater = getActivity().getLayoutInflater();
        View view = inflater.inflate(R.layout.dialayout,null);
        builder.setView(view)
                .setTitle("Confirm Your Email")
                .setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {

                    }
                })
                .setPositiveButton("OK", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        Intent intent = new Intent(SignUpActivity.class, MainActivity.class);
                        startActivity(intent);
                    }
                });
                return builder.create();
    }
}

Ответы [ 2 ]

0 голосов
/ 25 ноября 2018

Вы пытаетесь

Intent intent = new Intent(SignUpActivity.class, MainActivity.class)

Однако у Intent нет конструктора с 2 классами в качестве аргументов.Отсюда ошибка.

Что вы хотите, это использовать конструктор Intent(Context, Class<?>).В частности, в вашем случае вы делаете это:

Intent intent = new Intent(getActivity(), MainActivity.class);
0 голосов
/ 25 ноября 2018

Причина, по которой вы получаете эту ошибку, заключается в том, что вы в ExampleDialogue действии , но вы начинаете намерение с SignUpActivity.class до MainActivity.class.Если вы хотите перейти к MainActivity.class, вам нужно будет сделать:

Intent intent = new Intent(getApplicationContext(), MainActivity.class);
startActivity(intent);

Кроме того, он не может разрешить конструктор, поэтому просто добавьте этот конструктор по умолчанию, который вы можете изменить по своему усмотрению:

public ExampleDialogue(){
    //Constructor code.
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...