警报对话框跳转到其他活动

时间:2015-09-13 11:36:35

标签: android

我在Alert Dialog中有2个按钮,我想让它像是如果单击“EXIT”,它将跳转到MainActivity,当“Restrat”单击时它将跳转到B_Activity 感谢

alertDialog.setButton(AlertDialog.BUTTON_POSITIVE,"Exit", new DialogInterface.OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {


                }

            });
            alertDialog.setButton(AlertDialog.BUTTON_NEGATIVE, "Restart", new DialogInterface.OnClickListener() {

                @Override
                public void onClick(DialogInterface dialog, int which) {

                }

3 个答案:

答案 0 :(得分:1)

  

我想要点击“EXIT”点击它,它会跳转到MainActivity

我猜你在打开对话框的时候已经MainActivity了,只需一个简单的dialog.dismiss();就可以回到MainActivity,如果不是,你就必须intent alertDialog.setButton(AlertDialog.BUTTON_POSITIVE,"Exit", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); //if you are on `MainActivity` Intent i = new Intent(getContext(), MainActivity.class); //if under this dialog you do not have your MainActivity getContext().startActivity(i); } }); 1}}如下

Intent
  

当点击“Restrat”时,它将跳转到B_Activity

您必须按如下方式alertDialog.setButton(AlertDialog.BUTTON_NEGATIVE, "Restart", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Intent i = new Intent(getContext(), B_Activity.class) getContext().startActivity(i); }

Intent i = new Intent(YourCurrentActivity.this, TargetActivity.class); 
startActivity(i);

注意:在问了一些问题之后,请阅读一些关于Android的基础知识,我会解释一下代码。

为什么要使用dialog.dismiss();

  

关闭此对话框,将其从屏幕上删除。

为什么要使用Intent

  

intent是要执行的操作的抽象描述。它可以与startActivity一起使用来启动Activity,broadcastIntent可以将它发送到任何感兴趣的BroadcastReceiver组件,startService(Intent)或bindService(Intent,ServiceConnection,int)可以与后台服务进行通信。

这是什么getContext()

  

检索运行此Dialog的Context并返回Dialog使用的Context。

希望这个答案有助于解决您的问题。

答案 1 :(得分:0)

你可以使用Intent来启动一个Activity,就像那样:

db.default.url="jdbc:h2:mem:play"

并在onClick方法中编写此代码。

答案 2 :(得分:0)

您可以使用以下代码轻松切换您的活动:

Intent myIntent = new Intent(FirstActivity.this, SecondActivity.class);
startActivity(myIntent);

但请花点时间阅读documentation