常用的Dialog有确认对话框,单选按钮对话框,多选按钮对话框,复选按钮对话框另外还有自定义的对话框

AlertDialog的常用方法
setTitle:为对话框设置标题
setMessage:为对话框设置内容
setIcon:为对话框设置图标
setItems设置对话框要显示的list
setMultiChoiceItems:一般用于复选框显示
setSingleChoiceItem:,设置单选按钮
setNeutralButton:普通按钮
setPositiveButton:添加确定按钮
setNegativeButton:添加取消按钮
setView:设置自定义样式
下面通过一个实例来了解这些方法
这是运行结果:
MainActivity.class
package com.example.alertdialog;
import android.R.bool;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.app.Dialog;
import android.content.DialogInterface;
import android.content.pm.LabeledIntent;
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 {
private Button button1;
private Button button2;
private Button button3;
private Button button4;
private Button button5;
private int mark=0;
private String item[] = { "学生", "工人", "教师", "农民" };
private String multChoice[]={"旅游","电影","运动","读书"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button1 = (Button) findViewById(R.id.btn_button1);
button2 = (Button) findViewById(R.id.btn_button2);
button3 = (Button) findViewById(R.id.btn_button3);
button4 = (Button) findViewById(R.id.btn_button4);
button5 = (Button) findViewById(R.id.btn_button5);
button1.setOnClickListener(this);
button2.setOnClickListener(this);
button3.setOnClickListener(this);
button4.setOnClickListener(this);
button5.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
//确认对话框
case R.id.btn_button1: {
AlertDialog.Builder builder = new Builder(this);
builder.setIcon(R.drawable.ic_launcher);
builder.setTitle("确认对话框");
builder.setMessage("确认退出?");
builder.setPositiveButton("确定",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "你单击了确定按钮",
Toast.LENGTH_SHORT).show();
}
});
builder.setNegativeButton("取消",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "你单击了取消按钮",
Toast.LENGTH_SHORT).show();
}
});
builder.create();
builder.show();
break;
}
//列表对话框
case R.id.btn_button2: {
AlertDialog.Builder builder = new Builder(this);
builder.setIcon(R.drawable.ic_launcher);
builder.setTitle("职业");
builder.setItems(item, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "你的职业是" + item[which],
Toast.LENGTH_SHORT).show();
}
});
builder.create();
builder.show();
break;
}
//多选对话框
case R.id.btn_button3: {
final boolean choose[]=new boolean[multChoice.length];
AlertDialog.Builder builder = new Builder(this);
builder.setIcon(R.drawable.ic_launcher);
builder.setTitle("爱好");
builder.setMultiChoiceItems(multChoice, null, new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
// TODO Auto-generated method stub
choose[which]=isChecked;
}
});
builder.setPositiveButton("确认", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
String result="";
for(int i=0;i<multChoice.length;i++){
if(choose[i]){
result+=multChoice[i]+" ";
}
}
Toast.makeText(MainActivity.this, "你的爱好["+result+"]", Toast.LENGTH_SHORT).show();
}
});
builder.create();
builder.show();
break;
}
//单选对话框
case R.id.btn_button4: {
mark=0;
AlertDialog.Builder builder = new Builder(this);
builder.setIcon(R.drawable.ic_launcher);
builder.setTitle("职业");
builder.setSingleChoiceItems(item, 0, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
mark=which;
}
});
builder.setPositiveButton("确定",
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "你的职业:"+item[mark], Toast.LENGTH_SHORT).show();
}
});
builder.create();
builder.show();
break;
}
//自定义对话框
case R.id.btn_button5: {
LayoutInflater inflater=LayoutInflater.from(this);
View view=inflater.inflate(R.layout.item, null);
AlertDialog.Builder builder = new Builder(this);
builder.setIcon(R.drawable.ic_launcher);
builder.setTitle("自定义对话框");
builder.setView(view);
builder.setNeutralButton("普通按钮", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this,"我是自定义的对话框哦",Toast.LENGTH_SHORT).show();
}
});
builder.create();
builder.show();
break;
}
}
}
}
布局文件
activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical" > <Button android:id="@+id/btn_button1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="确认对话框" /> <Button android:id="@+id/btn_button2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="列表对话框" /> <Button android:id="@+id/btn_button3" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="多选对话框" /> <Button android:id="@+id/btn_button4" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="单选对话框" /> <Button android:id="@+id/btn_button5" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="自定义对话框" /> </LinearLayout> </RelativeLayout>
自定义的对话框布局文件
item.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:scaleType="fitCenter" android:src="@drawable/icon" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="我是自定义的对话框" /> </LinearLayout>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# android
# alertdialog
# android自定义对话框
# Android AlertDialog(对话框)实例详解
# Android中AlertDialog四种对话框的最科学编写用法(实例代码)
# Android使用AlertDialog创建对话框
# Android使用AlertDialog实现对话框
# Android对话框AlertDialog详解
# 对话框
# 自定义
# 单选
# 我是
# 多选
# 单击
# 这是
# 复选框
# 复选
# public
# implements
# Toast
# private
# extends
# Button
# LabeledIntent
# view
# DialogInterface
# pm
# OnClickListener
相关文章:
如何通过商城自助建站源码实现零基础高效建站?
盘锦网站制作公司,盘锦大洼有多少5G网站?
如何用美橙互联一键搭建多站合一网站?
合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?
Python如何创建带属性的XML节点
济南网站制作的价格,历城一职专官方网站?
在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?
小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?
简历在线制作网站免费版,如何创建个人简历?
XML的“混合内容”是什么 怎么用DTD或XSD定义
c# await 一个已经完成的Task会发生什么
历史网站制作软件,华为如何找回被删除的网站?
惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?
山东云建站价格为何差异显著?
网站制作员失业,怎样查看自己网站的注册者?
h5在线制作网站电脑版下载,h5网页制作软件?
如何通过虚拟机搭建网站?详细步骤解析
网站制作需要会哪些技术,建立一个网站要花费多少?
浅谈Javascript中的Label语句
表情包在线制作网站免费,表情包怎么弄?
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
建站之星展会模板:智能建站与自助搭建高效解决方案
建站主机选择指南:服务器配置与SEO优化实战技巧
深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的?
C++时间戳转换成日期时间的步骤和示例代码
深圳防火门网站制作公司,深圳中天明防火门怎么编码?
宿州网站制作公司兴策,安徽省低保查询网站?
详解jQuery停止动画——stop()方法的使用
如何快速搭建支持数据库操作的智能建站平台?
上海网站制作网站建设公司,建筑电工证网上查询系统入口?
北京制作网站的公司,北京铁路集团官方网站?
C#如何序列化对象为XML XmlSerializer用法
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
如何将凡科建站内容保存为本地文件?
一键网站制作软件,义乌购一件代发流程?
如何在IIS7中新建站点?详细步骤解析
制作国外网站的软件,国外有哪些比较优质的网站推荐?
如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?
建站主机数据库如何配置才能提升网站性能?
如何配置IIS站点权限与局域网访问?
北京网站制作的公司有哪些,北京白云观官方网站?
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
哈尔滨网站建设策划,哈尔滨电工证查询网站?
盐城做公司网站,江苏电子版退休证办理流程?
如何通过免费商城建站系统源码自定义网站主题与功能?
建站之星CMS五站合一模板配置与SEO优化指南
如何在阿里云虚拟服务器快速搭建网站?
微课制作网站有哪些,微课网怎么进?
如何在阿里云虚拟主机上快速搭建个人网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。