在onVerificationFailed Firebase事件发生后,Android后退按钮停止工作

时间:2018-08-14 12:23:11

标签: android events alertdialog

我有一个AlertDialog,其中显示一些文本框,editexts和按钮,用于通过Firebase确认电话号码。

如果我尝试确认引发该事件的数字(例如,一个不存在的数字),那么只要AlertDialog在屏幕上,后退按钮就好像突然停止工作。

我的意思是,无论按下后退按钮多少,我都检查了其关联的OnCancelListener是否停止触发。

我还检查了一下,以防万一,可能由于该按钮而触发的事件(如onBackPressed或onKeyDown)均未触发,看来该按钮已被完全禁用,尽管有可能还有另一个事件我没有意识到那会被解雇。

这是onVerficiationFailed的代码,尽管看起来好像没有任何东西可以禁用“后退”按钮,即使以非常遥远的方式也是如此。

CountDownTimer mcd;
AlertDialog dialog1;
EditText input1;
EditText input2;

 @Override
                public void onVerificationFailed(FirebaseException e) {
                    mcd.cancel();
                    final Button button3 = ((AlertDialog) dialog1).getButton(AlertDialog.BUTTON_NEUTRAL);
                    button3.setEnabled(true);


                    if (e instanceof FirebaseAuthInvalidCredentialsException) {

                        Toast.makeText(getApplicationContext(),"Verification failed",Toast.LENGTH_LONG).show();
                    }

                    final Button button = ((AlertDialog) dialog1).getButton(AlertDialog.BUTTON_POSITIVE);

                    button.setEnabled(true);

                    if (language.equals("English")) {
                        button.setText("Send/Resend code");
                    } else {
                        button.setText("Envía/Reenvía código");
                    }


                    input.setEnabled(true);// EditText from the dialog
                    input2.setEnabled(true); // EditText from the dialog
                }

有什么可能的想法吗?

0 个答案:

没有答案