温馨提示×

如何用AlertDialog.Builder取消对话框

小樊
81
2024-10-12 21:12:22
栏目: 编程语言

要使用AlertDialog.Builder取消对话框,您需要首先创建一个AlertDialog实例,然后使用setOnCancelListener()方法为其设置一个取消监听器。当用户点击对话框的“取消”按钮时,监听器会触发一个回调方法。在这个方法中,您可以执行取消对话框所需的操作。

以下是一个简单的示例:

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

public class MainActivity extends AppCompatActivity {

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

        Button button = findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                showDialog();
            }
        });
    }

    private void showDialog() {
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("取消对话框");
        builder.setMessage("您确定要取消吗?");

        // 设置取消监听器
        builder.setOnCancelListener(new DialogInterface.OnCancelListener() {
            @Override
            public void onCancel(DialogInterface dialog) {
                // 在这里执行取消对话框所需的操作
                cancelDialog();
            }
        });

        AlertDialog alertDialog = builder.create();
        alertDialog.show();
    }

    private void cancelDialog() {
        // 在这里执行取消对话框所需的操作,例如关闭对话框、释放资源等
        // ...
    }
}

在这个示例中,当用户点击“取消”按钮时,onCancel()方法会被触发,然后调用cancelDialog()方法执行相应的操作。您可以根据实际需求修改这个方法中的代码。

0