android 对话框(二)Dialog列表
来源:互联网 发布:淘宝无法举证 编辑:程序博客网 时间:2024/05/16 10:24
可通过 AlertDialog
API 提供三种列表:
- 传统单选列表
- 永久性单选列表(单选按钮)
- 永久性多选列表(复选框)
通过:
setItems(int itemsId, DialogInterface.OnClickListener listener)
第一个参数是一个数组
第二个参数是对选择的监听
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(R.string.sigleDialog)
.setItems(R.array.city, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this,which+"",Toast.LENGTH_LONG).show();
dialog.dismiss();
}
});
AlertDialog dialog=builder.create();
dialog.show();
和
setAdapter(ListAdapter adapter, DialogInterface.OnClickListener listener)这两个方法来设定列表
第一个对数是一个适配器
第二个参数是一个监听
默认情况下点击后对话框就消失了(不用调用dismiss方法)
如果不让点击后消失用下面的两个方法
setSingleChoiceItems()永久性单选列表(单选按钮)后面带有选择图标
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(R.string.sigleDialog)
.setSingleChoiceItems(R.array.city, 0, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(MainActivity.this, which + "", Toast.LENGTH_LONG).show();
}
});
AlertDialog dialog=builder.create();
dialog.show();
这个方法有三个参数:
第一个是一个数组,也右可以是指针(用于数据库的cusor)
第二个是默认选中的值 如果一个都不选择则为null
第三个是选择的监听
setMultiChoiceItems()永久性多选列表(复选框)后面带有选择图标(不调用Dismiss方法默认是不消失的)
final List mSelectedItems = new ArrayList(); //已选择的项
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(R.string.muiltDialog)
.setMultiChoiceItems(R.array.city, null, new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialog, int which,
boolean isChecked) {
if (isChecked) {
//选中的值
mSelectedItems.add(which);
} else if (mSelectedItems.contains(which)) {
//取消
mSelectedItems.remove(Integer.valueOf(which));
}
}
})
// Set the action buttons
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
}
})
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
}
});
builder.create().show();
这个方法有三个参数和上面的单选是一样的,唯一的区别是监听事件不一样:
第一个是一个数组,也右可以是指针(用于数据库的cusor)
第二个是默认选中的值 如果一个都不选择则为null
第三个是选择的监听
这三种类型的对话框都可以用DialogFragment去管理,只需要把上面的代码拷贝到
子Fragment的这个方法里就可以实现。
上图:
项目地址:https://github.com/wuhrGH/dialogBGTransparent
0 0
- android 对话框(二)Dialog列表
- Android之Dialog对话框(二)
- 15. android dialog ——列表对话框
- android列表对话框(dialog)的实现
- Android二个按钮Dialog对话框
- Android之对话框Dialog(二)
- 从零开始学android<Dialog对话框.二十五.>
- Android 继承DialogFragment弹出dialog对话框二
- Android打造万能的对话框Dialog(二)
- Dialog-普通对话框-列表对话框
- Android-Dialog对话框 全解(普通对话框,单选对话框,多选对话框,列表对话框,自定义对话框,Activity对话框)
- 17. android dialog —— 单选列表对话框
- 18. android dialog —— 多选列表对话框
- android dialog —— 多选列表对话框
- android dialog —— 多选列表对话框
- Android Dialog和adapter关联,列表形式显示对话框
- Dialog(二)------列表Dialog
- 用Dialog实现列表对话框
- Java并发多线程面试题 Top 50
- html-手机端-点击按钮-去高亮-加点击效果
- freemarker+poi 模板生成 word添加图片
- 分析URL Routing和URL Rewriting两者之间的不同
- CodeForces 413A Data Recovery
- android 对话框(二)Dialog列表
- php中echo等语言结构与函数差异
- 在IntelliJ上操作GitHub
- 静态资源库CDN服务
- C++ 强制转换函数const_cast,reinterpret_cast,static_cast,dynamic_cast
- md5密码加盐
- 6.有关802.11b物理头:preamble部分
- Spring学习笔记---2.2-基于注解的配置
- Android中measure过程、WRAP_CONTENT详解以及xml布局文件解析流程浅析(上)