在主XML中声明两个Button,声明Id
package com.example.myapplication;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class alert extends AppCompatActivity {
private Button putong1;
private Button duoanniu1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_alert);
putong1 = findViewById(R.id.putong);
putong1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ShowDialogNormal();
}
});
duoanniu1 =findViewById(R.id.duoanniu);
duoanniu1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ShowDialogMany();
}
});
}
}
在主类中声明两个Button,分别进行绑定
给Button设置单击事件
大概就是固定的,主要是OnClick里面的方法是一会定义的,一步一步来,两个按钮都进行这样的处理
记得两个按钮的名字和OnClick里面的方法名不一样
private void ShowMessage(String str) {
Toast.makeText(alert.this, str, Toast.LENGTH_LONG);
}
建立一个消息提示,具体的可以百度搜索Toast如何使用
里面参数的意义为(当前类,提示的信息,提示的时间长短);
(在中间那一行的后面加上.show();即可立即提示,这里的提示我们下面有相应的操作就不立即提示了)
public void ShowDialogNormal() {
AlertDialog.Builder normal = new AlertDialog.Builder(alert.this);
normal.setIcon(R.drawable.cat);
normal.setTitle("普通按钮标题");
normal.setMessage("请保管对你的随身物品!");
normal.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
ShowMessage("你点击的普通按钮");
}
});
normal.create().show();
}
单选按钮对话框的处理
AlertDialog.Builder是提示对话框必需品需要实例化使用,参数为(当前的类)
下一行设置的是提示对话框的图标
下一行是提示对话框的标题
下一行是提示对话框的内容
下一行提示对话框的按钮(固定格式)
参数为(按钮的内容,DialogInterface.OnClickListener)
在OnClick里面写的是刚才声明的方法(传入的参数为你要提示的内容)
最后进行创造并且显示出来
public void ShowDialogMany(){
AlertDialog.Builder many = new AlertDialog.Builder(alert.this);
many.setIcon(R.drawable.cow);
many.setTitle("多选按钮标题");
many.setMessage("对多选按钮的态度吗");
many.setNeutralButton("中立", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
ShowMessage("中立按钮");
}
});
many.setNegativeButton("反对", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
ShowMessage("反对按钮");
}
});
many.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
ShowMessage("您点击的确定");
}
});
many.create().show();
}
多选按钮对话框的处理
AlertDialog.Builder是提示对话框必需品需要实例化使用,参数为(当前的类)
下一行设置的是提示对话框的图标
下一行是提示对话框的标题
下一行是提示对话框的内容
第一个提示对话框的按钮(固定格式)
参数为(按钮的内容,DialogInterface.OnClickListener)这个按钮会提示在左面
第二个提示对话框按钮会提示在中间靠右(从右往左数第二个)
第三个提示对话框按钮会提示在最右面
这三个设置的对话框按钮有稍许的不同
运行运行运行:
界面
运行单选按钮:
运行多选按钮: