自定义对话框弹出不必要的

时间:2017-06-05 09:03:23

标签: android alertdialog activity-finish

我正在使用Android应用程序,最近我发现了一个小错误。事实是,即使我没有调用自定义警报对话框功能,警报对话框也会出现不必要的情况。究竟是什么原因?

使用以下代码提供代码: -

if (booking.isPayable()) {

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

如果条件为真,则转到活动,否则显示dialogBox。 getBookingConfirmation()是一个打开警报的功能 对话框。但即使条件为真,也会在转换发生之前弹出对话框。

3 个答案:

答案 0 :(得分:2)

您需要在代码中添加else

                   if (booking.isPayable()) 
                   {

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

答案 1 :(得分:0)

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

使用其他案例原因即使在完成

之后也会调用getBookingConfirmation

答案 2 :(得分:0)

AlertDialoge。

首先你试试吧...... 使用此解决您的错误

gradle Librery:

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

Dialoge示例:

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();