普通对话框
//这是普通对话框
btnId.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//创建构造者模式
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
//设置对话框图片
builder.setIcon(R.drawable.ic_launcher_background);
//设置对话框标题
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();
}
});
//设置对话框
AlertDialog alertDialog = builder.create();
//显示对话框
alertDialog.show();
}
});
这是单选对话框
//这是单选对话框
final String[] items = {"学习", "玩游戏", "睡觉"};
singleId.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//创建构造者
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
//设置标题
builder.setTitle("选择你的生活方式");
builder.setSingleChoiceItems(items, 0, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "你选择的生活方式是:" + items[which], Toast.LENGTH_SHORT).show();
}
});
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();
}
});
//设置对话框
AlertDialog alertDialog = builder.create();
//显示对话框
alertDialog.show();
}
});
#这是多选对话框
//这是多选对话框
multiplyId.setOnClickListener(new View.OnClickListener() {
String[] items = {"白色", "蓝色", "红色"};
boolean[] booleans = {false, false, false};
@Override
public void onClick(View v) {
//创建构造者
final AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("这是多选对话框");
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.setMultiChoiceItems(items, booleans, new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
booleans[which] = isChecked;
}
});
//创建对话框
AlertDialog alertDialog = builder.create();
//显示对话框
alertDialog.show();
}
});
#这是自定义对话框
##这是布局文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="这是显示文字" />
<ImageView
android:id="@+id/img_id"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_launcher_round" />
</LinearLayout>
//这是自定义对话框
customId.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//创建构造者
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
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();
}
});
//获取视图
View inflate = LayoutInflater.from(MainActivity.this).inflate(R.layout.layout_custom, null);
//设置自定义布局
builder.setView(inflate);
//设置对话框
AlertDialog alertDialog = builder.create();
//显示对话框
alertDialog.show();
}
});
#这是水平进度对话框
//这是水平对话框
level.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final ProgressDialog progressDialog = new ProgressDialog(MainActivity.this);
//设置水平样式
progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
//设置最大值
progressDialog.setMax(100);
//设置标题
progressDialog.setMessage("正在下载");
//显示
progressDialog.show();
//定时器
final Timer timer = new Timer();
timer.schedule(new TimerTask() {
int i = 0;
@Override
public void run() {
if (i == 100) {
//设置消失
progressDialog.dismiss();
timer.cancel();
}
progressDialog.setProgress(i += 10);
}
}, 0, 1000);
}
});
#这是圆形进度对话框
//这是圆形进度对话框
circleId.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final ProgressDialog progressDialog = new ProgressDialog(MainActivity.this);
//设置水平样式
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
//设置最大值
progressDialog.setMax(100);
//设置标题
progressDialog.setMessage("正在下载");
//显示
progressDialog.show();
//定时器
final Timer timer = new Timer();
timer.schedule(new TimerTask() {
int i = 0;
@Override
public void run() {
if (i == 100) {
//设置消失
progressDialog.dismiss();
timer.cancel();
}
progressDialog.setProgress(i += 10);
}
}, 0, 1000);
}
});
#这是日期对话框
//这是日期对话框
dateId.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//创建日历类
Calendar instance = Calendar.getInstance();
new DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
Toast.makeText(MainActivity.this, "年:" + year + "月:" + month + "日:" + dayOfMonth, Toast.LENGTH_SHORT).show();
}
}, instance.get(Calendar.YEAR), instance.get(Calendar.MONTH), instance.get(Calendar.DAY_OF_MONTH)).show();
}
});
#这是时间对话框
timeId.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//创建日历类
Calendar instance = Calendar.getInstance();
new TimePickerDialog(MainActivity.this, new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
Toast.makeText(MainActivity.this, hourOfDay + "" + minute, Toast.LENGTH_SHORT).show();
}
}, instance.get(Calendar.HOUR), instance.get(Calendar.MINUTE), true).show();
}
});