自定义对话框意外弹出

Custom Dialog pops up unwantedly

我正在开发一个 Android 应用程序,最近我发现了一个小错误。问题是,即使我不调用 自定义警报对话框 函数,警报对话框也会意外弹出。一定是什么原因?

提供我正在使用的代码:-

if (booking.isPayable()) {

                        goToActivity(PaymentActivity.class);
                        postModelSticky(booking);
                        finish();
                    }
                    getBookingConfirmation();

如果条件为真,则转到activity,否则显示对话框。 getBookingConfirmation() 是一个打开提醒的函数 对话框。但是即使条件为真,对话框也会在转换发生之前弹出。

您需要在代码中添加 else

                   if (booking.isPayable()) 
                   {

                        goToActivity(PaymentActivity.class);
                        postModelSticky(booking);
                        finish();
                    }
                    else
                    getBookingConfirmation();
if (booking.isPayable()) {
   goToActivity(PaymentActivity.class);
   postModelSticky(booking);
   finish();
}            
else{
   getBookingConfirmation();
 }

使用 Else Case 因为即使在完成后也会调用 getBookingConfirmation

A​​lertDialoge。

所以请先试试.... 使用这个解决你的错误

gradle 图书馆:

compile 'cn.pedant.sweetalert:library:1.3'

对话示例:

if (booking.isPayable()) {

                        goToActivity(PaymentActivity.class);
                        postModelSticky(booking);
                        finish();
                    }
                    getBookingConfirmation();


 new SweetAlertDialog(this, SweetAlertDialog.ERROR_TYPE)
                        .setTitleText("Oops... No Internet Connection")
                        .setContentText("No internet connection on your device. Would you like to enable it?")
                        .setConfirmText("Enable Internet")
                        .setConfirmClickListener(new SweetAlertDialog.OnSweetClickListener() {
                            @Override
                            public void onClick(SweetAlertDialog sweetAlertDialog) {
                                Intent dialogIntent = new Intent(android.provider.Settings.ACTION_SETTINGS);
                                dialogIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                                startActivity(dialogIntent);
                            }
                        })
                        .setConfirmText("Cancel")
                        .setCancelClickListener(new SweetAlertDialog.OnSweetClickListener() {
                            @Override
                            public void onClick(SweetAlertDialog sweetAlertDialog) {
                                finish();
                            }
                        })
                        .show();