package com.itheima74.alertdialog;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.os.SystemClock;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
// 普通对话框
public void showDialog(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setIcon(R.mipmap.ic_launcher);
builder.setTitle("警告:");
builder.setMessage("世界上最遥远的距离是没有网络...");
builder.setPositiveButton("确定", null);
builder.setNegativeButton("取消", null);
builder.show();
}
// 单选对话框
public void showSingleDialog(View view) {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
final String[] res = {"android", "ios", "java", "c", "c++"};
builder.setSingleChoiceItems(res, 0, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, "选中了:" + res[which], Toast.LENGTH_SHORT).show();
dialog.dismiss();
}
});
builder.show();
}
// 多选对话框
public void showMulDialog(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
final String[] res = {"android", "ios", "java", "c", "c++"};
// 需要一个中间变量保存当前条目是否选中
final boolean[] buffers = {false, false, false, false, false};
builder.setMultiChoiceItems(res, buffers, new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
Toast.makeText(MainActivity.this, "which:" + which + ",ischecked:" + isChecked, Toast.LENGTH_SHORT).show();
buffers[which] = isChecked;
}
});
builder.setNegativeButton("取消", null);
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
StringBuilder sb = new StringBuilder();
for (int i = 0; i < buffers.length; i++) {
if (buffers[i]) {
sb.append(res[i]).append(" ");
}
}
Toast.makeText(MainActivity.this, "选中了:" + sb.toString(), Toast.LENGTH_SHORT).show();
dialog.dismiss();
}
});
builder.show();
}
// 点击按钮,显示进度条对话框
public void showProgressDialog(View v) {
// 创建一个ProgressDialog
final ProgressDialog progressDialog = new ProgressDialog(this);
// 设置水平
progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
// 设置头像
progressDialog.setIcon(R.mipmap.ic_launcher);
progressDialog.setTitle("显示下载进度:");
progressDialog.setMessage("当前进度...");
// 模拟进度
progressDialog.setMax(100);
new Thread() {
@Override
public void run() {
for (int i = 1; i <= 100; i++) {
progressDialog.setProgress(i);
SystemClock.sleep(30);
}
progressDialog.dismiss();
// 告知用户下载完成,主线程运行
runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(MainActivity.this, "下载完成!", Toast.LENGTH_SHORT).show();
}
});
}
}.start();
progressDialog.show();
}
}
转载请注明原文地址: https://ju.6miu.com/read-17431.html