版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Dialog和PopWindowDialog、PopWindow本课学习AlertDialogProgressDialog自定义DialogPopWindow的使用DialogDialog是android开发过程中最常用到的组件之一,它包括以下几种类型:警告对话框:AlertDialog(最常见)进度对话框:ProgressDialog日期选择对话框:DatePickerDialog时间选择对话框:TimePickerDialog自定义对话框:从Dialog继承AlertDialogAlertDialog警告对话框一个可以有0到3个按钮,一个单选框或复选框的,列表的对话框.Builder类提供了为对话框添加多选或单选列表,以及为这些列表添加事件处理的功能。另外,这个Builder类将AlertDialog对话框上的3个按钮按照他们的位置分别称呼为:PositiveButton,
NeutralButton,
NegativeButtonAlertDialog创建一个简单的AlertDialog:final
AlertDialog.Builder
builder=
new
AlertDialog.Builder(this);builder.setTitle("警告");builder.setMessage("确认退出吗?");builder.setIcon(R.drawable.ic_launcher);builder.setPositiveButton("确定",new
DialogInterface.OnClickListener(){
@Overridepublic
void
onClick(DialogInterface
dialog,int
which){
Log.e(“确定”,“用户点击了确定按钮”);dialog.dismiss();}});builder.setNegativeButton("取消",new
DialogInterface.OnClickListener(){
@Overridepublic
void
onClick(DialogInterface
dialog,
int
which)
{Log.e(“取消”,“用户点击了取消按钮”);dialog.dismiss();//隐藏dialog}});final
AlertDialog
dialog
=
builder.create();AlertDialog创建一个带单选框的AlertDialog:final
AlertDialog.Builder
builder=new
AlertDialog.Builder(this);builder.setTitle("请选择");builder.setIcon(R.drawable.ic_launcher);builder.setSingleChoiceItems(new
String[]{"语文","数学","英语"},-1,newDialogInterface.OnClickListener()
{@Overridepublic
void
onClick(DialogInterface
dialog,int
which){
Log.e("列表","用户选择了第"+which+"项");}});builder.setPositiveButton("确定",new
DialogInterface.OnClickListener(){
@Overridepublic
void
onClick(DialogInterface
dialog,
int
which)
{Log.e("确定","用户点击了确定按钮");builder.dismiss();}});dialog.setNegativeButton("取消",new
DialogInterface.OnClickListener(){
@Overridepublic
void
onClick(DialogInterface
dialog,
int
which)
{Log.e("取消","用户点击了取消按钮");dialog.dismiss();//隐藏dialog}});final
AlertDialog
dialog
=
builder.create();AlertDialog创建一个带复选框的AlertDialog:final
AlertDialog.Builder
builder=new
AlertDialog.Builder(this);builder.setTitle("请选择");builder.setIcon(R.drawable.ic_launcher);builder.setMultiChoiceItems(new
String[]{"语文","数学","英语"},new
boolean[]{false,false,false},newDialogInterface.OnMultiChoiceClickListener()
{@Overridepublic
void
onClick(DialogInterface
dialog,
int
which,boolean
isChecked)
{Log.e("列表","用户点击了第"+which+"项,此项当前状态为"+isChecked);}});builder.setPositiveButton("确定",new
DialogInterface.OnClickListener(){
@Overridepublic
void
onClick(DialogInterface
dialog,int
which){
Log.e("确定","用户点击了确定按钮");dialog.dismiss();}});builder.setNegativeButton("取消",new
DialogInterface.OnClickListener(){
@Overridepublic
void
onClick(DialogInterface
dialog,
int
which)
{Log.e("取消","用户点击了取消按钮");dialog.dismiss();//隐藏dialog}});final
AlertDialogdialog=builder.create();ProgressDialogProgressDialog进度对话框显示一个进度环或者一个进度条.由于它是AlertDialog的扩展,所以它也支持按钮它可以显示一个进度的动画——进度环或者进度条。这个对话框也可以提供按钮,例如取消一个下载等ProgressDialog默认的进度条final
ProgressDialog
dialog
=
new
ProgressDialog(this);dialog.setTitle("进度条");dialog.setIcon(R.drawable.ic_launcher);dialog.setMessage("请稍后");Button
btn
=
(Button)
findViewById(R.id.btn);btn.setOnClickListener(new
View.OnClickListener()
{@Overridepublic
void
onClick(View
v){
dialog.show();//显示dialog}});ProgressDialog使用一个动画进度条来显示进度dialog
=
new
ProgressDialog(this);dialog.setTitle("进度条");dialog.setIcon(R.drawable.ic_launcher);dialog.setMessage("请稍后");dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);@Overridepublic
void
run()
{
int
progress
=
0;while(progress<100){progress++;dialog.setProgress(progress);try
{Thread.sleep(100);}
catch
(InterruptedException
e)
{e.printStackTrace();}}dialog.dismiss();}自定义Dialog效果如下:自定义Dialog自定义Dialog<?xml
version="1.0"
encoding="utf-8"?><resources><style
name="my_dialog_theme"><itemname="android:windowBackground">@drawable/img_bg</item><item
name="android:windowFrame">@null</item><item
name="android:windowNoTitle">true</item><item
name="android:windowFullscreen">false</item><item
name="android:windowIsFloating">true</item></style></resources>通常来说,必须要重新改写一下Dialog的Theme。在res/vaules/目录下新建dialog_theme.xml文件PopWindow新建一个popupWindow弹出框
popupWindow是一个阻塞式的弹出框,这就意味着在我们退出这个弹出框之前,程序会一直等待,这和AlertDialog不同哦,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 课程设计平板搓丝机
- 进程控制系统课程设计
- 课程设计平面图的内容
- 初中地方特色课程设计
- 2024-2030年中国稳压器行业运营动态与应用前景预测报告
- 课程设计农村
- 2024-2030年中国炸鸡腌料行业消费状况及销售趋势预测研究报告
- 2024-2030年中国法式门智能冰箱行业消费状况与竞争趋势预测报告
- 2024-2030年中国核聚变能行业前景规划及投资策略建议研究报告
- 2024-2030年中国己二酸低聚物行业运行趋势与需求前景预测报告
- 政府会计练习题集题库及答案
- 动物诊疗许可证申请表 (2)
- 数列(中职数学春季高考练习题)
- 《腰段解剖》PPT课件
- 李砚祖《艺术设计概论》第四章设计概论设计与科学技术通用课件
- 高速铁路桥涵工程桥上救援疏散通道施工方案
- 招投标法实施条例解读PPT
- 班会PPT: 认识小动物儿童PPT课件
- 机场道面混凝土施工工艺及方法
- 部编版三年级语文上册教材解读及教学建议(课堂PPT)
- 隐形眼镜医疗器械质量管理制度
评论
0/150
提交评论