对话框的八种形式
1、普通对话框
2、自定义对话框
3、单选对话框
4、多选对话框
5、水平进度条对话框
6、模糊进度条对话框
7、日期对话框
//时间对话框
private void shijian() {
Calendar calendar = Calendar.getInstance();
TimePickerDialog timePickerDialog = 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();
}
}, calendar.get(Calendar.HOUR), calendar.get(Calendar.MINUTE), true);
timePickerDialog.show();
}
//模糊水平进度条对话框
private void mohu() {
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 pro = 0;
@Override
public void run() {
if(pro==100){
progressDialog.dismiss();
timer.cancel();
}
progressDialog.setProgress(pro+=10);
}
},0,1000);
}
//进度条对话框
private void shuiping() {
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 pro = 0;
@Override
public void run() {
if(pro==100){
progressDialog.dismiss();
timer.cancel();
}
progressDialog.setProgress(pro+=10);
}
},0,1000);
}
//单选按钮对话框
private void danxuan() {
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setIcon(R.mipmap.ic_launcher_round);//设置图标
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();
}
});
//创建单选对话框里的数据源
final String[] days = new String[]{“星期一”,“星期二”,“星期三”,“星期四”,“星期五”,“星期六”,“星期日”};
builder.setSingleChoiceItems(days, 1, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, “您选择了:”+days[which], Toast.LENGTH_SHORT).show();
}
});
//创建并展示
builder.create().show();
}
//自定义对话框
AlertDialog alertDialog;
private void zidingyi() {
//inflate是自己自定义的一个布局
View inflate = View.inflate(MainActivity.this, R.layout.layout, null);
Button but_colse = inflate.findViewById(R.id.bt);
but_colse.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
alertDialog.dismiss();
}
});
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setView(inflate);
//创建并展示
alertDialog = builder.create();
alertDialog.show();
}
//普通对话框
private void normal_dailog() {
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setIcon(R.mipmap.ic_launcher_round);//设置图标
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.create().show();
}