3.五种常见对话框

3.五种常见对话框

简介

对话框也是程序与用户交互的一种方式,通常用于显示当前程序提示信息以及相关说明,以小窗口形式展现。

常见对话框有以下几种:

  • 普通对话框
  • 单选对话框
  • 多选对话框
  • 进度条对话框
  • 消息对话框
  • 自定义对话框

本文主要介绍前五种对话框,对于自定义对话框暂不赘述。

一、普通对话框

普通对话框(Dialog)一般只会显示提示信息,并具有确定和取消按钮。

在这里插入图片描述

private void btn_normalClcik() {
   
		// 1. 先要创建构建器 this
		AlertDialog.Builder builder = new AlertDialog.Builder(this);

		// 标题
		builder.setTitle("警告");

		// 图标
		builder.setIcon(R.drawable.ic_launcher);

		// 提示信息
		builder.setMessage("你确定要退出吗?");

		// 确定按钮
		// DialogInterface: 区分view包下的 OnClickListener();
		builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
   

			@Override
			public void onClick(DialogInterface dialog, int which) {
   
				// TODO Auto-generated method stub
				Toast.makeText(getApplicationContext(), "点击了确定按钮",
						Toast.LENGTH_SHORT).show();
			}
		});

		// 取消按钮
		builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
   

			@Override
			public void onClick(DialogInterface dialog, int which) {
   
				// TODO Auto-generated method stub
				Toast.makeText(getApplicationContext(), "点击了取消按钮",
						Toast.LENGTH_SHORT).show();
			}
		});

		// 一定要把对话框显示出来
		builder.show();

	}

二、单选对话框

单选对话框和RadioButton作用类似,只能选择一个选项,它是通过AlertDialog对象调用setSingleChoiceItems()方法创建的。

在这里插入图片描述

private void btn_singleChoseCLick() {
   

		// 创建默认值
		int moren = 1;

		checked = moren;

		// 1. 先要创建构建器 this
		AlertDialog.Builder builder = new AlertDialog.Builder(this);

		// 标题
		builder.setTitle("请选择你的性别?");

		// 图标
		builder.setIcon(R.drawable.ic_launcher);

		// 创建items
		final String[] items = new String[] {
    "男", "女", "中" };

		// 设置内容 -1 表示没有默认值
		builder.setSingleChoiceItems(items, moren,
				new DialogInterface.OnClickListener() {
   

					@Override
					public void onClick(DialogInterface dialog, int which) {
   
						// TODO Auto-generated method stub
						// System.out.println("----which---"+which);

						checked = which;
					}
				});

		// 确定按钮
		// DialogInterface: 区分view包下的 OnClickListener();
		builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
   

			@Override
			// which -2
			public void onClick(DialogInterface dialog, int which) {
   
				// TODO Auto-generated method stub

				Toast.makeText(getApplicationContext(), items[checked],
						Toast.LENGTH_SHORT).show();
			}
		});

		// 取消按钮
		builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
   

			@Override
			// which -1
			public void onClick(DialogInterface dialog, int which) {
   
				// TODO Auto-generated method stub
				Toast.makeText(getApplicationContext(), "点击了取消按钮",
						Toast.LENGTH_SHORT).show();
			}
		});

		// 显示出来
		builder.show();

	}

三、多选对话框

多选对话框通常在需要勾选多种选项时使用,例如添加兴趣爱好、喜爱的电影等。创建多选对话框与创建单选对话框类似,调用setMultiChoiceItems()方法就可实现。

在这里插入图片描述

	// 点击多选对话框
	private void btn_moreChoseCLick() {
   
		// 1. 先要创建构建器 this
		AlertDialog.Builder builder = new AlertDialog.Builder(this);

		// 标题
		builder.setTitle("请选择你喜欢的运动?");

		// 图标
		builder.setIcon(R.drawable.ic_launcher);

		// 创建items
		final String
  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DMr.Liu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值