大帅版android理论课件第_第1页
大帅版android理论课件第_第2页
大帅版android理论课件第_第3页
大帅版android理论课件第_第4页
大帅版android理论课件第_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论