Alertdialog 对话框 安卓.docx

上传人:b****7 文档编号:8808604 上传时间:2023-02-01 格式:DOCX 页数:13 大小:500.85KB
下载 相关 举报
Alertdialog 对话框 安卓.docx_第1页
第1页 / 共13页
Alertdialog 对话框 安卓.docx_第2页
第2页 / 共13页
Alertdialog 对话框 安卓.docx_第3页
第3页 / 共13页
Alertdialog 对话框 安卓.docx_第4页
第4页 / 共13页
Alertdialog 对话框 安卓.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

Alertdialog 对话框 安卓.docx

《Alertdialog 对话框 安卓.docx》由会员分享,可在线阅读,更多相关《Alertdialog 对话框 安卓.docx(13页珍藏版)》请在冰豆网上搜索。

Alertdialog 对话框 安卓.docx

Alertdialog对话框安卓

 

3.10Alertdialog对话框

用AlertDialog.Builder创建对话框需要了解以下几个方法:

setTitle:

为对话框设置标题

setIcon:

为对话框设置图标

setMessage:

为对话框设置内容

setView:

给对话框设置自定义样式

setItems:

设置对话框要显示的一个list,一般用于显示几个命令时

setMultiChoiceItems:

用来设置对话框显示一系列的复选框

create:

创建对话框

show:

显示对话框

在AlertDialog中,定义按钮都是通过setXXXButton方法来完成,其中一共有3种不同的ActionButtons供我们选择:

1.setPositiveButton(CharSequencetext,DialogInterface.OnClickListenerlistener)

这是一个相当于Yes,OK、确定操作的按钮,

2.setNegativeButton(CharSequencetext,DialogInterface.OnClickListenerlistener)

这是一个相当于No,Cancel取消操作的按钮。

3.setNeutralButton(CharSequencetext,DialogInterface.OnClickListenerlistener)

这个是相当于一个忽略操作的按钮。

【例】简单的AlertDialog

Java代码:

publicvoidshowDialog1(Viewview){

AlertDialog.Builderbuilder=newAlertDialog.Builder(this);

builder.setTitle("简单对话框");

builder.setMessage("你好,我就是最简单的对话框!

");

builder.setIcon(R.mipmap.ic_launcher);

builder.show();

}

【例2】带按钮的对话框

/**

*带按钮的对话框

*/

publicvoidshowDialog2(Viewview){

AlertDialog.Builderbuilder=newAlertDialog.Builder(this);

builder.setIcon(R.mipmap.ic_launcher);

builder.setTitle("简单对话框");

builder.setMessage("你真的删除吗?

");

builder.setPositiveButton("确定",newDialogInterface.OnClickListener(){

@Override

publicvoidonClick(DialogInterfacedialog,intwhich){

Toast.makeText(MainActivity.this,"确定按钮的单击事件",Toast.LENGTH_SHORT).show();

}

});

builder.setNegativeButton("取消",newDialogInterface.OnClickListener(){

@Override

publicvoidonClick(DialogInterfacedialog,intwhich){

Toast.makeText(MainActivity.this,"取消按钮的单击事件",Toast.LENGTH_SHORT).show();

}

});

builder.setNeutralButton("忽略",newDialogInterface.OnClickListener(){

@Override

publicvoidonClick(DialogInterfacedialog,intwhich){

Toast.makeText(MainActivity.this,"忽略按钮的单击事件",Toast.LENGTH_SHORT).show();

}

});

builder.show();

}

注意:

which参数表示的是actionbutton所代表的int值:

positive:

-1

negative:

-2

neutral:

-3

【例3】下拉列表对话框

/**

*带下拉列表对话框

*/

publicvoidshowDialog3(Viewview){

AlertDialog.Builderbuilder=newAlertDialog.Builder(this);

builder.setTitle("请选择城市");

builder.setIcon(R.mipmap.ic_launcher);

finalString[]city={"北京","上海","深圳","广州","杭州"};

builder.setItems(city,newDialogInterface.OnClickListener(){

@Override

publicvoidonClick(DialogInterfacedialog,intwhich){

Toast.makeText(MainActivity.this,"选择的城市为:

"+city[which],Toast.LENGTH_SHORT).show();

}

});

builder.show();

}

【例4】弹出一个下拉单选框

Java代码:

intindex=0;

/**

*带下拉单选对话框

*/

publicvoidshowDialog4(Viewview){

finalString[]arrayFruit=newString[]{"苹果","橘子","草莓","香蕉"};

DialogalertDialog=newAlertDialog.Builder(this).

setTitle("你喜欢吃哪种水果?

").

setIcon(R.mipmap.ic_launcher).

setSingleChoiceItems(arrayFruit,0,newDialogInterface.OnClickListener(){

@Override

publicvoidonClick(DialogInterfacedialog,intwhich){

index=which;

}

}).

setPositiveButton("确认",newDialogInterface.OnClickListener(){

@Override

publicvoidonClick(DialogInterfacedialog,intwhich){

Toast.makeText(MainActivity.this,arrayFruit[index],Toast.LENGTH_SHORT).show();

}

}).

setNegativeButton("取消",newDialogInterface.OnClickListener(){

@Override

publicvoidonClick(DialogInterfacedialog,intwhich){

//TODOAuto-generatedmethodstub

}

}).

create();

alertDialog.show();

}

 

【例5】弹出一个下拉复选框

Java代码

/**

*带复选对话框

*/

publicvoidshowDialog5(Viewview){

AlertDialog.Builderbuilder=newAlertDialog.Builder(MainActivity.this);

builder.setIcon(R.mipmap.ic_launcher);

builder.setTitle("爱好");

finalString[]hobbies={"玩手机","玩游戏","睡觉","码代码"};

finalboolean[]selectedInit=newboolean[]{true,true,false,false};

//设置一个单项选择下拉框

/**

*第一个参数指定我们要显示的一组下拉多选框的数据集合

*第二个参数代表哪几个选项被选择,如果是null,则表示一个都不选择,如果希望指定哪一个多选选项框被选择,

*需要传递一个boolean[]数组进去,其长度要和第一个参数的长度相同,例如{true,false,false,true};

*第三个参数给每一个多选项绑定一个监听器

*/

builder.setMultiChoiceItems(hobbies,selectedInit,newDialogInterface.OnMultiChoiceClickListener()

{

@Override

publicvoidonClick(DialogInterfacedialog,intwhich,booleanisChecked)

{

selectedInit[which]=isChecked;

}

});

builder.setPositiveButton("确定",newDialogInterface.OnClickListener()

{

@Override

publicvoidonClick(DialogInterfacedialog,intwhich)

{

StringBufferstr=newStringBuffer(100);

for(inti=0;i

if(selectedInit[i]==true){

str.append(hobbies[i]+",");

}

}

Toast.makeText(MainActivity.this,"爱好为:

"+str.toString(),Toast.LENGTH_SHORT).show();

}

});

builder.setNegativeButton("取消",newDialogInterface.OnClickListener()

{

@Override

publicvoidonClick(DialogInterfacedialog,intwhich)

{

}

});

builder.show();

}

【例6】自定义对话框

(1)定义布局文件——login.xml

xmlversion="1.0"encoding="utf-8"?

>

android="

android:

orientation="vertical"android:

layout_width="match_parent"

android:

layout_height="match_parent"

android:

padding="@dimen/activity_horizontal_margin">

android:

id="@+id/username"

android:

layout_width="match_parent"

android:

layout_height="wrap_content"

android:

hint="请输入用户名"/>

android:

id="@+id/password"

android:

layout_width="match_parent"

android:

layout_height="wrap_content"

android:

layout_below="@id/username"

android:

hint="请输入密码"

android:

inputType="textPassword"/>

(2)Java程序

/**

*自定义对话框

*/

publicvoidshowDialog6(Viewv){

AlertDialog.Builderbuilder=newAlertDialog.Builder(MainActivity.this);

builder.setIcon(R.mipmap.ic_launcher);

builder.setTitle("请输入用户名和密码");

//通过LayoutInflater来加载一个xml的布局文件作为一个View对象

Viewview=LayoutInflater.from(MainActivity.this).inflate(R.layout.login,null);

//设置我们自己定义的布局文件作为弹出框的Content

builder.setView(view);

finalEditTextusername=(EditText)view.findViewById(R.id.username);

finalEditTextpassword=(EditText)view.findViewById(R.id.password);

builder.setPositiveButton("确定",newDialogInterface.OnClickListener()

{

@Override

publicvoidonClick(DialogInterfacedialog,intwhich)

{

Stringa=username.getText().toString().trim();

Stringb=password.getText().toString().trim();

//将输入的用户名和密码打印出来

Toast.makeText(MainActivity.this,"用户名:

"+a+",密码:

"+b,Toast.LENGTH_SHORT).show();

}

});

builder.setNegativeButton("取消",newDialogInterface.OnClickListener()

{

@Override

publicvoidonClick(DialogInterfacedialog,intwhich)

{

}

});

builder.show();

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1