Android 常见的四种对话框实例讲解
时间:2022-06-19 10:26:10|栏目:Android代码|点击: 次
1、对话框通知(Dialog Notification)
当你的应用需要显示一个进度条或需要用户对信息进行确认时,可以使用对话框来完成。
下面代码将打开一个如图所示的对话框:
public void click1(View view) { AlertDialog.Builder builder = new Builder(this); builder.setTitle("工学1号馆"); builder.setIcon(R.drawable.ic_launcher); builder.setMessage("浏览wuyudong的博客?"); builder.setPositiveButton("确定", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Uri uri = Uri.parse("http://www.wuyudong.com/");// 打开链接 Intent intent = new Intent(Intent.ACTION_VIEW, uri); startActivity(intent); } }); builder.setNegativeButton("取消", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); AlertDialog dialog = builder.create(); dialog.show(); }
2、创建带单选项列表的对话框
public void click2(View view) { AlertDialog.Builder builder = new Builder(this); builder.setTitle("单选对话框"); final String[] items = new String[] { "java", ".net", "php" }; builder.setSingleChoiceItems(items, 0, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(MainActivity.this, items[which] + "被点击了", 0) .show(); } }); builder.show(); }
3、创建带多选项列表的对话框
public void click3(View view) { AlertDialog.Builder builder = new Builder(this); builder.setTitle("多选对话框"); final String[] items = new String[] { "java", ".net", "php", "C++" }; builder.setMultiChoiceItems(items, new boolean[] { true, false, false, true }, new OnMultiChoiceClickListener() { @Override public void onClick(DialogInterface dialog, int which, boolean isChecked) { Toast.makeText(MainActivity.this, items[which] + isChecked, 0) .show(); } }); builder.setNegativeButton("取消", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); builder.show(); }
4、进度对话框(ProgressDialog)
使用代码ProgressDialog.show(ProgressDialogActivity.this, "请稍等", "数据正在加载中...", true);创建并显示一个进度对话框。
调用setProgressStyle()方法设置进度对话框风格。有两种风格:
ProgressDialog.STYLE_SPINNER 旋体进度条风格 (为默认风格) ProgressDialog.STYLE_HORIZONTAL 横向进度条风格 public void click4(View view) { ProgressDialog pd = new ProgressDialog(this); pd.setTitle("提醒"); pd.setMessage("正在加载中......"); pd.show(); }
下面的代码实现横向进度条风格:
public void click5(View view) { final ProgressDialog pd = new ProgressDialog(this); pd.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL); pd.setMax(100); pd.show(); new Thread() { public void run() { for (int i = 0; i < 100; i++) { pd.setProgress(i); try { Thread.sleep(20); } catch (InterruptedException e) { e.printStackTrace(); } } pd.dismiss(); }; }.start(); }
上一篇:Android音视频开发之MediaExtactor使用教程
栏 目:Android代码
本文标题:Android 常见的四种对话框实例讲解
本文地址:http://www.codeinn.net/misctech/205277.html