You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android中用户切换Activity时的确认及跳转前弹窗实现求助

解决方案:点击按钮弹出确认框后跳转Activity

没问题,这是Android开发里非常常见的交互场景,我给你整理了完整的实现代码和注意事项,你直接照着来就行:

第一步:给Activity_1的按钮设置点击事件

首先在Activity_1的布局文件(比如activity_1.xml)里添加按钮:

<Button
    android:id="@+id/btn_launch_activity2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="启动Activity_2" />

第二步:在Activity_1中实现对话框逻辑

接下来在Activity_1的代码里,找到按钮并设置点击监听,弹出确认对话框,用户点击「确定」时启动Activity_2。

如果你用Java:

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;

public class Activity_1 extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_1);

        Button launchBtn = findViewById(R.id.btn_launch_activity2);
        launchBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // 创建确认对话框
                new AlertDialog.Builder(Activity_1.this)
                        .setTitle("确认跳转")
                        .setMessage("确定要启动Activity_2吗?")
                        .setPositiveButton("确定", (dialog, which) -> {
                            // 用户点击确定,启动Activity_2
                            Intent intent = new Intent(Activity_1.this, Activity_2.class);
                            startActivity(intent);
                        })
                        .setNegativeButton("取消", (dialog, which) -> {
                            // 用户点击取消,关闭对话框即可
                            dialog.dismiss();
                        })
                        .show();
            }
        });
    }
}

如果你用Kotlin:

import android.content.Intent
import android.os.Bundle
import android.widget.Button
import androidx.appcompat.app.AlertDialog
import androidx.appcompat.app.AppCompatActivity

class Activity_1 : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_1)

        val launchBtn = findViewById<Button>(R.id.btn_launch_activity2)
        launchBtn.setOnClickListener {
            AlertDialog.Builder(this)
                .setTitle("确认跳转")
                .setMessage("确定要启动Activity_2吗?")
                .setPositiveButton("确定") { _, _ ->
                    val intent = Intent(this, Activity_2::class.java)
                    startActivity(intent)
                }
                .setNegativeButton("取消") { dialog, _ ->
                    dialog.dismiss()
                }
                .show()
        }
    }
}

关键注意事项

  • 别忘了在AndroidManifest.xml里注册Activity_2,否则启动时会崩溃:
<activity android:name=".Activity_2" />

这样就完成啦,点击按钮会弹出确认框,确认后就能顺利跳转到Activity_2了~

内容的提问来源于stack exchange,提问作者Bằng Lê Minh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:05:53