在创建一个android应用程序时,首先创建了main活动,然后添加了splash活动以及一个普通的活动。

所以我的问题是,每当我在应用程序中单击退出时,它都会关闭主要活动,并在启动活动中返回该正常活动。
我在主要活动中存在的退出按钮上使用了finish();

那么我如何退出android启动器屏幕上的应用程序

我也尝试过使用Action Main创建新的意图,但这只是最小化了我想要关闭的应用程序

MainActivity.class

if (id == R.id.exit) {
            AlertDialog.Builder builder = new AlertDialog.Builder(homeActivity.this);
            builder.setMessage("Do You Want To Exit?").setCancelable(false)
                    .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            finish();
                        }
                    }).setNegativeButton("No", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    dialog.cancel();
                }
            });
            AlertDialog alert = builder.create();
            alert.setIcon(R.drawable.ic_error_outline_black_24dp);
            alert.setTitle("Exit!!");
            alert.show();
      }

最佳答案

MainAcitivity启动SplashActivity时,请按如下所示设置标志,并在finish()上调用SplashAcitivty

Intent intent = new Intent(context, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
finish();

关于java - finish()不能按预期工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41501554/

10-11 20:53