当前位置:网站首页>alertDialog創建对话框
alertDialog創建对话框
2022-07-07 15:40:00 【XLMN】
alertDialog創建对话框
alertDialog生成对话框可以分为以下4个区域
1、图标区
2、标题区
3、内容区
4、按钮区
public class MainActivity extends Activity {
private ClipboardManager show;
String[] items = new String[]{
“列表项1”,
“列表项2”,
“列表项3”,
“列表项4”
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.alertdialog);
}
public void simple(View source) {
AlertDialog.Builder builder = new AlertDialog.Builder(this)
//设置对话框标题
.setTitle("简单对话框")
//设置图标
.setIcon(R.drawable.mia3)
.setMessage("对话框第二行测试内容/n");
//为alterDalog.builder添加“确定”按钮
setPositiveButton(builder);
//为alterDalog.builer添加取消按钮
setNegativeButton(builder).create().show();
}
private AlertDialog.Builder setPositiveButton(AlertDialog.Builder builder) {
//调用setpostivitybutton方法添加确定按钮
return builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
show.setText("单击了【确定】按钮");
}
});
}
private AlertDialog.Builder setNegativeButton(AlertDialog.Builder builder) {
return builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
show.setText("单击了【取消】按钮");
}
});
}
public void simpleList(View source) {
AlertDialog.Builder builder = new AlertDialog.Builder(this)
//设置对话框标题
.setTitle("简单列表项对话框")
//设置图标
.setIcon(R.drawable.mia3)
//设置简单的列表项内容
.setItems(items, new DialogInterface.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.mia3)
//设置单选列表项,默认选中第二项(索引为1)
.setSingleChoiceItems(items, 1, new DialogInterface.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.mia3)
//设置多选列表项,设置勾选第二项,第四项
.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.mia3)
//设置自定义列表项
.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) {
// 加载界面布局文件
TableLayout tl = (TableLayout) getLayoutInflater().inflate(R.layout.login, null);
new AlertDialog.Builder(this)
// 设置对话框图标
.setIcon(R.drawable.mia3)
// 设置对话框标题
.setTitle(“自定义对话框”)
// 设置对话框的view对象
.setView(tl)
// 为对话框设置一个确定按钮
.setPositiveButton(“登录”, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//此处可执行登录处理
}
})
// 为对话框设置一个取消按钮
.setNegativeButton(“取消”, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//取消登录不进行任何操作
}
})
//創建并显示对话框
.create().show();
}
}
<?xml version="1.0" encoding="utf-8"?><Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="customList"
android:text="自定义列表对话框"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="customView"
android:text="自定义view对话框"/>
<?xml version="1.0" encoding="utf-8"?> <TableRow>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="用户名"
android:textSize="10pt" />
<!--输入用户名文本框-->
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请填写登录账号"
android:selectAllOnFocus="true" />
</TableRow>
<TableRow>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="密码"
android:textSize="10pt" />
<!--输入密码的文本框-->
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请填写密码"
android:password="true" />
</TableRow>
<TableRow>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="电话号码"
android:textSize="10pt" />
<!--输入电话号码的文本框-->
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请填写您的密码"
android:selectAllOnFocus="true"
android:phoneNumber="true" />
</TableRow>

边栏推荐
- Repair method of firewall system crash and file loss, material cost 0 yuan
- 麒麟信安操作系统衍生产品解决方案 | 存储多路径管理系统,有效提高数据传输可靠性
- Solidity 开发环境搭建
- SlashData开发者工具榜首等你而定!!!
- Siggraph 2022 best technical paper award comes out! Chen Baoquan team of Peking University was nominated for honorary nomination
- A tour of grpc:03 - proto serialization / deserialization
- With the latest Alibaba P7 technology system, mom doesn't have to worry about me looking for a job anymore
- L1-028 判断素数(Lua)
- Notes on installing MySQL in centos7
- DevOps 的运营和商业利益指南
猜你喜欢

Matplotlib绘制三维图形

Nerf: the ultimate replacement for deepfake?

第2章搭建CRM项目开发环境(搭建开发环境)

让保险更“保险”!麒麟信安一云多芯云桌面中标中国人寿, 助力金融保险信息技术创新发展

Devops' operational and commercial benefits Guide

How to add aplayer music player in blog

With the latest Alibaba P7 technology system, mom doesn't have to worry about me looking for a job anymore

企业即时通讯软件是什么?它有哪些优势呢?

How to choose the appropriate automated testing tools?

PLC: automatically correct the data set noise, wash the data set | ICLR 2021 spotlight
随机推荐
LeetCode 515(C#)
【视频/音频数据处理】上海道宁为您带来Elecard下载、试用、教程
How to implement safety practice in software development stage
从DevOps到MLOps:IT工具怎样向AI工具进化?
Lex & yacc of Pisa proxy SQL parsing
第二十四届中国科协湖南组委会调研课题组一行莅临麒麟信安调研考察
From Devops to mlops: how do it tools evolve to AI tools?
L1-028 判断素数(Lua)
专精特新软件开发类企业实力指数发布,麒麟信安荣誉登榜
麒麟信安中标国网新一代调度项目!
Mysql 索引命中级别分析
Repair method of firewall system crash and file loss, material cost 0 yuan
浅谈 Apache Doris FE 处理查询 SQL 源码解析
【可信计算】第十次课:TPM密码资源管理(二)
LeetCode 535(C#)
【TPM2.0原理及应用指南】 9、10、11章
With the latest Alibaba P7 technology system, mom doesn't have to worry about me looking for a job anymore
How to add aplayer music player in blog
【黄啊码】为什么我建议您选择go,而不选择php?
第3章业务功能开发(用户访问项目)