Android AlertDialog
关系图如下:
Android主要提供四种对话框:
1:AlertDialog:功能最丰富,实际应用最广的对话框。
2:ProgressDialog:进度条对话框
3:DatePickerDialog:日期选择器对话框
4:TimePickerDialog:时间选择器对话框
创建一个对话框的步骤:
AlertDialog.Builder builder = new AlertDialog.Builder(this)
// 1:设置对话框标题
.setTitle("自定义列表项对话框")
// 2:设置图标
.setIcon(R.drawable.tools)
// 3:设置内容
.setMessage("对话框的测试内容\n第二行内容");
// 为AlertDialog.Builder添加“确定”按钮
setPositiveButton(builder);
// 为AlertDialog.Builder添加“取消”按钮
setNegativeButton(builder)
.create()
.show();
代码区:
main.xml代码区:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_horizontal"> <!-- 显示一个普通的文本编辑框组件 --> <EditText android:id="@+id/show" android:layout_width="match_parent" android:layout_height="wrap_content" android:editable="false"/> <!-- 定义一个普通的按钮组件 --> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="简单对话框" android:onClick="simple" /> <!-- 定义一个普通的按钮组件 --> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="简单列表项对话框" android:onClick="simpleList" /> <!-- 定义一个普通的按钮组件 --> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="单选列表项对话框" android:onClick="singleChoice" /> <!-- 定义一个普通的按钮组件 --> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="多选列表项对话框" android:onClick="multiChoice" /> <!-- 定义一个普通的按钮组件 --> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="自定义列表项对话框" android:onClick="customList" /> <!-- 定义一个普通的按钮组件 --> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="自定义View对话框" android:onClick="customView" /> </LinearLayout>
Activity代码区:
public class MainActivity extends Activity {
TextView show;
String[] items = new String[] {
"aserbao", "Android",
" Java",
"IOS" };
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
show = (TextView) findViewById(R.id.show);
}
public void simple(View source)
{
AlertDialog.Builder builder = new AlertDialog.Builder(this)
// 设置对话框标题
.setTitle("简单对话框")
// 设置图标
.setIcon(R.drawable.tools)
.setMessage("对话框的测试内容\n第二行内容");
// 为AlertDialog.Builder添加“确定”按钮
setPositiveButton(builder);
// 为AlertDialog.Builder添加“取消”按钮
setNegativeButton(builder)
.create()
.show();
}
public void simpleList(View source)
{
AlertDialog.Builder builder = new AlertDialog.Builder(this)
// 设置对话框标题
.setTitle("简单列表对话框")
// 设置图标
.setIcon(R.drawable.tools)
// 设置简单的列表项内容
.setItems(items, new OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
show.setText("你选中了《" + items[which] + "》");
}
});
// 为AlertDialog.Builder添加“确定”按钮
setPositiveButton(builder);
// 为AlertDialog.Builder添加“取消”按钮
setNegativeButton(builder)
.create()
.show();
}
public void singleChoice(View source)
{
AlertDialog.Builder builder = new AlertDialog.Builder(this)
// 设置对话框标题
.setTitle("单选列表项对话框")
// 设置图标
.setIcon(R.drawable.tools)
// 设置单选列表项,默认选中第二项(索引为1)
.setSingleChoiceItems(items, 1, new OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
show.setText("你选中了《" + items[which] + "》");
}
});
// 为AlertDialog.Builder添加“确定”按钮
setPositiveButton(builder);
// 为AlertDialog.Builder添加“取消”按钮
setNegativeButton(builder)
.create()
.show();
}
public void multiChoice(View source)
{
AlertDialog.Builder builder = new AlertDialog.Builder(this)
// 设置对话框标题
.setTitle("多选列表项对话框")
// 设置图标
.setIcon(R.drawable.tools)
// 设置多选列表项,设置勾选第2项、第4项
.setMultiChoiceItems(items
, new boolean[]{false , true ,false ,true}, null);
// 为AlertDialog.Builder添加“确定”按钮
setPositiveButton(builder);
// 为AlertDialog.Builder添加“取消”按钮
setNegativeButton(builder)
.create()
.show();
}
public void customList(View source)
{
AlertDialog.Builder builder = new AlertDialog.Builder(this)
// 设置对话框标题
.setTitle("自定义列表项对话框")
// 设置图标
.setIcon(R.drawable.tools)
// 设置自定义列表项
.setAdapter(new ArrayAdapter<String>(this
, R.layout.array_item
, items), null);
// 为AlertDialog.Builder添加“确定”按钮
setPositiveButton(builder);
// 为AlertDialog.Builder添加“取消”按钮
setNegativeButton(builder)
.create()
.show();
}
public void customView(View source)
{
// 装载app\src\main\res\layout\login.xml界面布局文件
TableLayout loginForm = (TableLayout)getLayoutInflater()
.inflate( R.layout.login, null);
new AlertDialog.Builder(this)
// 设置对话框的图标
.setIcon(R.drawable.tools)
// 设置对话框的标题
.setTitle("自定义View对话框")
// 设置对话框显示的View对象
.setView(loginForm)
// 为对话框设置一个“确定”按钮
.setPositiveButton("登录", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
// 此处可执行登录处理
}
})
// 为对话框设置一个“取消”按钮
.setNegativeButton("取消", new OnClickListener()
{
@Override
public void onClick(DialogInterface dialog,
int which)
{
// 取消登录,不做任何事情
}
})
// 创建并显示对话框
.create()
.show();
}
private AlertDialog.Builder setPositiveButton(
AlertDialog.Builder builder)
{
// 调用setPositiveButton方法添加“确定”按钮
return builder.setPositiveButton("确定", new OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
show.setText("单击了【确定】按钮!");
}
});
}
private AlertDialog.Builder setNegativeButton(
AlertDialog.Builder builder)
{
// 调用setNegativeButton方法添加“取消”按钮
return builder.setNegativeButton("取消", new OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
show.setText("单击了【取消】按钮!");
}
});
}
}
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# Android
# AlertDialog对话框
# AlertDialog对话框实例详解
# AlertDialog
# Android实现点击AlertDialog上按钮时不关闭对话框的方法
# Android修改源码解决Alertdialog触摸对话框边缘消失的问题
# Android中AlertDialog各种对话框的用法实例详解
# ANDROID中自定义对话框AlertDialog使用示例
# 简析Android多种AlertDialog对话框效果
# Android AlertDialog对话框用法示例
# Android AlertDialog实现分享对话框/退出对话框/下载对话框
# Android中AlertDialog 点击按钮后不关闭对话框的功能
# Android Alertdialog(实现警告对话框)
# Android常用的AlertDialog对话框及自定义对话框
# Android使用AlertDialog实现对话框
# Android编程实现AlertDialog自定义弹出对话框的方法示例
# 对话框
# 自定义
# 一个普通
# 多选
# 单选
# 单击
# 选择器
# 希望能
# 不做
# 四种
# 谢谢大家
# 创建一个
# 可执行
# 实际应用
# 勾选
# 最广
# 最丰富
# 进度条
# apk
# schemas
相关文章:
制作门户网站的参考文献在哪,小说网站怎么建立?
如何快速搭建安全的FTP站点?
如何快速查询域名建站关键信息?
建站VPS推荐:2025年高性能服务器配置指南
做企业网站制作流程,企业网站制作基本流程有哪些?
如何快速搭建支持数据库操作的智能建站平台?
如何设计高效校园网站?
广州营销型建站服务商推荐:技术优势与SEO优化解析
天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?
已有域名如何快速搭建专属网站?
高防服务器租用如何选择配置与防御等级?
如何在Golang中使用encoding/gob序列化对象_存储和传输数据
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
如何做静态网页,sublimetext3.0制作静态网页?
,sp开头的版面叫什么?
如何在阿里云域名上完成建站全流程?
合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?
如何通过商城自助建站源码实现零基础高效建站?
网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?
建站之星代理如何优化在线客服效率?
家具网站制作软件,家具厂怎么跑业务?
如何用西部建站助手快速创建专业网站?
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
建站之星2.7模板快速切换与批量管理功能操作指南
网站制作报价单模板图片,小松挖机官方网站报价?
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
建站之星导航如何优化提升用户体验?
上海网站制作开发公司,上海买房比较好的网站有哪些?
如何在宝塔面板中修改默认建站目录?
建站之星如何通过成品分离优化网站效率?
外贸公司网站制作哪家好,maersk船公司官网?
宝塔面板创建网站无法访问?如何快速排查修复?
Android滚轮选择时间控件使用详解
如何用腾讯建站主机快速创建免费网站?
香港服务器如何优化才能显著提升网站加载速度?
如何快速搭建FTP站点实现文件共享?
详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)
建站之星各版本价格是多少?
简易网站制作视频教程,使用记事本编写一个简单的网页html文件?
如何通过宝塔面板实现本地网站访问?
北京网站制作公司哪家好一点,北京租房网站有哪些?
网站制作公司,橙子建站是合法的吗?
如何获取PHP WAP自助建站系统源码?
杭州银行网站设计制作流程,杭州银行怎么开通认证方式?
免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?
如何在阿里云完成域名注册与建站?
网站图片在线制作软件,怎么在图片上做链接?
已有域名能否直接搭建网站?
定制建站如何定义?其核心优势是什么?
*请认真填写需求信息,我们会在24小时内与您取得联系。