二、代码(着重看核心代码——AlertDialog创建)
package com.example.administrator.app_dialog;
import android.content.DialogInterface;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
Button btn1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//初始化视图0
initView();
//设置点击事件0
myClick();
}
//初始化视图1
private void initView() {
btn1 = findViewById(R.id.btn1);
}
//设置点击事件1
private void myClick(){
btn1.setOnClickListener(this);
}
//设置点击事件2
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.btn1:
//创建对话框——核心代码
AlertDialog dialog = new AlertDialog.Builder(this).create();
//设置标题
dialog.setTitle("这是标题");
//设置内容
dialog.setMessage("这是内容");
//设置肯定按钮的信息,包括按钮种类、文本和监听器
dialog.setButton(DialogInterface.BUTTON_POSITIVE, "肯定按钮", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//这里是肯定按钮点击后执行的内容
Toast.makeText(MainActivity.this, "您点击了肯定按钮", Toast.LENGTH_SHORT).show();
}
});
//设置否定按钮的信息,包括按钮种类、文本和监听器
dialog.setButton(DialogInterface.BUTTON_NEGATIVE, "否定按钮", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//这里是否定按钮点击后执行的内容
Toast.makeText(MainActivity.this, "您点击了否定按钮", Toast.LENGTH_SHORT).show();
}
});
//设置中性按钮的信息,包括按钮种类、文本和监听器
dialog.setButton(DialogInterface.BUTTON_NEUTRAL, "中性按钮", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//这里是中性按钮点击后执行的内容
Toast.makeText(MainActivity.this, "您点击了中性按钮", Toast.LENGTH_SHORT).show();
}
});
//显示对话框
dialog.show();
// //创建对话框——Dialog核心代码
// AlertDialog.Builder builder = new AlertDialog.Builder(this);
// //设置标题
// builder.setTitle("这是标题");
// //设置内容
// builder.setMessage("这是内容");
// //设置肯定按钮的信息,包括文本和监听器
// builder.setPositiveButton("肯定按钮", new DialogInterface.OnClickListener() {
// @Override
// public void onClick(DialogInterface dialog, int which) {
// //这里是肯定按钮点击后执行的内容
// Toast.makeText(MainActivity.this, "您点击了肯定按钮", Toast.LENGTH_SHORT).show();
// }
// });
// //设置否定按钮的信息,包括文本和监听器
// builder.setNegativeButton("否定按钮", new DialogInterface.OnClickListener() {
// @Override
// public void onClick(DialogInterface dialog, int which) {
// //这里是否定按钮点击后执行的内容
// Toast.makeText(MainActivity.this, "您点击了否定按钮", Toast.LENGTH_SHORT).show();
// }
// });
// //设置中性按钮的信息,包括文本和监听器,该方法使用较少
// builder.setNeutralButton("中性按钮", new DialogInterface.OnClickListener() {
// @Override
// public void onClick(DialogInterface dialog, int which) {
// //这里是中性按钮点击后执行的内容
// Toast.makeText(MainActivity.this, "您点击了中性按钮", Toast.LENGTH_SHORT).show();
// }
// });
// //创建对话框
// AlertDialog alertDialog = builder.create();
// //显示对话框
// alertDialog.show();
break;
}
}
}