【Andriod-AlertDialog控件】 弹出对话框AlertDialog用法
Result:


Code:
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast; public class MainActivity extends Activity implements OnClickListener
{
Button buttonSure, buttonRadio, buttonCheck, buttonList, buttonCustom; private String[] sexList =
{ "男", "女" };// 单选列表
private String[] likeList =
{ "篮球", "足球", "打游戏", "听音乐", "看电影" };// 多选列表
private String[] itemList =
{ "项目经理", "策划", "测试", "美工", "程序员" };// 列表 @Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); buttonSure = (Button) findViewById(R.id.buttonSure);
buttonRadio = (Button) findViewById(R.id.buttonRadio);
buttonCheck = (Button) findViewById(R.id.buttonCheck);
buttonList = (Button) findViewById(R.id.buttonList);
buttonCustom = (Button) findViewById(R.id.buttonCustom); buttonSure.setOnClickListener(this);
buttonRadio.setOnClickListener(this);
buttonCheck.setOnClickListener(this);
buttonList.setOnClickListener(this);
buttonCustom.setOnClickListener(this);
} @Override
public void onClick(View v)
{
switch (v.getId())
{
case R.id.button: break;
case R.id.buttonSure:
sureDialog();
break;
case R.id.buttonRadio:
radioDialog();
break;
case R.id.buttonCheck:
checkDailog();
break;
case R.id.buttonList:
listDialog();
break;
case R.id.buttonCustom:
customDialog();
break;
default:
break;
}
} /**
* 确认对话框
*/
private void sureDialog()
{
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("确认对话框");// 设置标题
builder.setIcon(R.drawable.ic_launcher);// 设置图标
builder.setMessage("确认对话框内容");// 设置内容
/* 添加对话框中确定按钮和点击事件 */
builder.setPositiveButton("确定", new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface arg0, int arg1)
{
Toast.makeText(MainActivity.this, "点击了确定按钮", Toast.LENGTH_SHORT).show();
}
});
/* 添加对话框中取消按钮和点击事件 */
builder.setNegativeButton("取消", new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface arg0, int arg1)
{
Toast.makeText(MainActivity.this, "你点击了取消按钮", Toast.LENGTH_SHORT).show();
}
});
AlertDialog dialog = builder.create();// 获取dialog
dialog.show();// 显示对话框
} /**
* 单选确认对话框
*/
private void radioDialog()
{
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("性别");// 设置标题
builder.setIcon(R.drawable.ic_launcher);// 设置图标
/* 参数一位单选列表文字,参数二为默认第几个选中(-1默认不选中),参数三是创建监听器 */
builder.setSingleChoiceItems(sexList, -1, new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
String sex = sexList[which];
Toast.makeText(MainActivity.this, "这个人性别为" + sex, Toast.LENGTH_SHORT).show();
}
}); /* 添加对话框中取消按钮和点击事件 */
builder.setNegativeButton("取消", new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
dialog.dismiss();// 关闭对话框
}
});
AlertDialog dialog = builder.create();// 获取dialog
dialog.show();// 显示对话框
} /**
* 多选对话框
*/
private void checkDailog()
{
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("爱好");// 设置标题
builder.setIcon(R.drawable.ic_launcher);// 设置图标
/* 参数同单选对话框一样,另外第二个参数默认不选中为null,而不是-1 */
builder.setMultiChoiceItems(likeList, null, new DialogInterface.OnMultiChoiceClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which, boolean isChecked)
{
if (isChecked)
{
Toast.makeText(MainActivity.this, "我喜欢" + likeList[which], Toast.LENGTH_SHORT).show();
} else
{
Toast.makeText(MainActivity.this, "我不喜欢" + likeList[which], Toast.LENGTH_SHORT).show();
}
}
});
/* 添加对话框中取消按钮点击事件 */
builder.setNegativeButton("取消", new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
dialog.dismiss();// 关闭对话框
}
});
AlertDialog dialog = builder.create();// 获取dialog
dialog.show();// 显示对话框
} /**
* 列表对话框
*/
private void listDialog()
{
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("部门列表");// 设置标题
builder.setIcon(R.drawable.ic_launcher);// 设置图标
builder.setItems(itemList, new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
Toast.makeText(MainActivity.this, "我点击了" + itemList[which], Toast.LENGTH_SHORT).show();
}
});
AlertDialog dialog = builder.create();// 获取dialog
dialog.show();// 显示对话框
} /**
* 自定义对话框
*/
private void customDialog()
{
LayoutInflater inflater = LayoutInflater.from(this);
View view = inflater.inflate(R.layout.dialog, null);// 获取自定义布局
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("自定义对话框");// 设置标题
builder.setIcon(R.drawable.ic_launcher);// 设置图标
builder.setView(view);// 设置自定义样式布局到对话框
AlertDialog dialog = builder.create();// 获取dialog
dialog.show();// 显示对话框
} }
【Andriod-AlertDialog控件】 弹出对话框AlertDialog用法的更多相关文章
- 根据条件决定My97DatePicker日期控件弹出的日期格式
代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <tit ...
- 【转】javascript入门系列演示·三种弹出对话框的用法实例
对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...
- 【JSP】三种弹出对话框的用法实例
对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...
- javascript入门系列演示·三种弹出对话框的用法实例
对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...
- 安卓弹出对话框——Alertdialog
在Android开发当中,在界面上弹出一个Dialog对话框使我们经常需要做的,本篇随笔将详细的讲解Dialog对话框这个概念,包括定义不同样式的对话框. 一.Dialog 我们首先来看看androi ...
- 安卓弹出对话框——Alertdialog(一)
首先看各种样式的对话框: 我们看到,Dialog有很多的子类实现,所以我们要定义一个对话框,使用其子类来实例化一个即可,而不要直接使用Dialog这个父类来构造. 二.AlertDialog 今天我们 ...
- my97日期控件弹出位置显示异常
使用my97日期选择控件的时候,如果整个页面是有滚动条的,根据触发显示日期的控件的父控件的position不同会显示不同的情况 1.position不为fixed则滑动滚动条,显示的日期层不会出现异常 ...
- JSP中三种弹出对话框的用法《转》
对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...
- 安卓弹出对话框——AlertDialog(二)
在Android中,启动一个对话框有三种方式: 1.定义一个新的activity,并将其主题设置为对话框风格 2.使用AlertDialog类,并且显示它 3.使用 Android的Dialog类的子 ...
随机推荐
- docker容器创建MariaDB镜像
基于commit命令方式创建 docker的安装 [root@test01 ~]# yum install docker [root@test01 ~]# systemctl enable docke ...
- xml 表格
设置单元格样式 <Style ss:ID="唯一id字符" ss:Name="单元格样式"> [内部通常用来设置 Alignment对齐.Font字 ...
- 【计数dp】Array Without Local Maximums
参考博客:[CF1068D]Array Without Local Maximums(计数DP) [题意] n<=1e5 dp[i][j][k]表示当前第i个数字为j,第i-1个数字与第i个之间 ...
- 【多重背包】Transport Ship
[来源] 2018年焦作网络赛 [参考博客] https://blog.csdn.net/baymax520/article/details/82719454 [题意] 有N种船只,每种船只的载货量为 ...
- jdbc插入mysql时间差14个小时的解决方案
在java中new Date()输出的时间是没错的,插入到mysql后少了14个小时,原因是新版jdbc驱动的时区设置问题. 在jdbc连接url最后加上serverTimezone=GMT%2B8即 ...
- 阿里云自动获取token值(python)
一,token说明 token的意思是“令牌”,是服务端生成的一串字符串,作为客户端进行请求的一个标识.当用户第一次登录后,服务器生成一个token并将此token返回给客户端,以后客户端只需带上这个 ...
- PowerBI 实现不同角色看到内容不同支持动态权限管理
首先,在PowerBIDesktop中进行设计,先设计一个权限表: 具体权限如下: 也就是说,这些用户账号在PowerBIService登录时,会分别代表这些用户,接下来会使用一个很重要的动态函数:U ...
- kali安装dnsdict6
https://src.fedoraproject.org/lookaside/pkgs/thc-ipv6/thc-ipv6-2.7.tar.gz/2975dd54be35b68c140eb2a6b8 ...
- element-ui中关闭对话框清空验证,清除form表单数据
对于elementUI中对话框,点击对话框和关闭按钮 怎么清空验证,清空form表单,避免二次点击还会有 验证错误的提示.今天终于自己查资料解决了,分享给大家 1.首先在你的对话框 取消按钮 加一个c ...
- ubuntu系统新用户添加
大概是4个步骤吧,是用脚本实现的,这里我列一下关键点 sudo useradd -m userYouWantAdd sudo passwd userYouWantAdd sudo usermod -a ...