AlertDialog和ProgressDialog
弹出对话框和进度对话框
1、AlertDialog弹出对话框2、ProgressDialog进度对话框 ①水平朝向:pDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//水平朝向 ②取消按钮: pDialog.setButton(DialogInterface.BUTTON_NEGATIVE,getString(android.R.string.cancel), new DialogInterface.OnClickListener()} ③进度对话框消失事件: pDialog.setOnDismissListener(new OnDismissListener() {} ④当前进度值: pDialog.setProgress(1 + i); ⑤进度值自增: pDialog.incrementProgressBy(1); 3、Android中内置资源文件 android.R.string.ok OK android.R.string.cancel Cancel android.R.drawable.ic_dialog_alert DialogInterface.BUTTON_NEGATIVE |
// 2、遍历集合删除,弹出一个alertdialog,让用户确认是否删除
AlertDialog.Builder builder = new AlertDialog.Builder(this);// 只能用Activity,不能用Context
builder.setTitle("删除短信");// 标题
builder.setMessage("您确定要删除所选中的短信吗");// 显示信息
builder.setIcon(android.R.drawable.ic_dialog_alert);// 图标
builder.setCancelable(false);// 弹出来的对话框不可被取消
// 3、ok按钮,cancel按钮
builder.setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() {
// 4、用户选择cancel,返回
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
builder.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
// 5、用户选择ok,将所选中的短信给删除,弹出一个ProgressDialog,更新删除进度,并提供取消按钮,可以随时取消删除
@Override
public void onClick(DialogInterface dialog, int which) {
//可以被删除
canDelete = true;
//进度对话框
pDialog = new ProgressDialog(ConversationUI.this);
pDialog.setTitle("正在删除短信");//标题
pDialog.setMax(menuItemSet.size());//进度对话框最大值
pDialog.setIcon(android.R.drawable.ic_dialog_alert);//图标
pDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//水平朝向
//取消按钮
pDialog.setButton(DialogInterface.BUTTON_NEGATIVE,getString(android.R.string.cancel), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//取消删除短信
canDelete = false;
pDialog.dismiss();
}
});
//对话框消失的监听事件
pDialog.setOnDismissListener(new OnDismissListener() {
@Override
public void onDismiss(DialogInterface dialog) {
// 6、删除完毕,跳转到list模式的界面
changeDisplayMode(DisplayMode.list);
Toast.makeText(ConversationUI.this, "删除完毕,共删除"+deleteMsgCount+"个联系人的短信", Toast.LENGTH_SHORT).show();
}
});
//进度对话框显示出来
pDialog.show();
//删除短信,开启子线程
new Thread(new DeleteMsg()).start();
dialog.dismiss();//弹出对话框消失
}
});
builder.show();
|
结果: ①弹出对话框 ②进度对话框 |