当前位置:网站首页>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>

边栏推荐
- The mail server is listed in the blacklist. How to unblock it quickly?
- A tour of grpc:03 - proto serialization / deserialization
- redis主从、哨兵主备切换搭建一步一步图解实现
- LeetCode 497(C#)
- 如何在软件研发阶段落地安全实践
- [source code interpretation] | source code interpretation of livelistenerbus
- 无法链接远程redis服务器(解决办法百分百)
- Flask搭建api服务-SQL配置文件
- L1-023 输出GPLT(Lua)
- L1-019 谁先倒(Lua)
猜你喜欢

MRS离线数据分析:通过Flink作业处理OBS数据
![[video / audio data processing] Shanghai daoning brings you elecard download, trial and tutorial](/img/14/4e7ebfb1ed5b99f8377af9d17d2177.jpg)
[video / audio data processing] Shanghai daoning brings you elecard download, trial and tutorial

【可信计算】第十二次课:TPM授权与会话

【TPM2.0原理及应用指南】 9、10、11章

NeRF:DeepFake的最终替代者?

How to add aplayer music player in blog

【TPM2.0原理及应用指南】 16、17、18章

AI来搞财富分配比人更公平?来自DeepMind的多人博弈游戏研究

【可信计算】第十三次课:TPM扩展授权与密钥管理

第2章搭建CRM项目开发环境(数据库设计)
随机推荐
《世界粮食安全和营养状况》报告发布:2021年全球饥饿人口增至8.28亿
第3章业务功能开发(安全退出)
LeetCode刷题day49
L1-027 出租(Lua)
Matplotlib绘制三维图形
本周小贴士#140:常量:安全习语
【信息安全法律法规】复习篇
L1-028 判断素数(Lua)
如何在软件研发阶段落地安全实践
[Seaborn] combination chart: facetgrid, jointgrid, pairgrid
Shallow understanding Net core routing
Smart logistics platform: make overseas warehouses smarter
mysql实现两个字段合并成一个字段查询
Sator推出Web3遊戲“Satorspace” ,並上線Huobi
【TPM2.0原理及应用指南】 1-3章
LeetCode 648(C#)
NeRF:DeepFake的最终替代者?
本周小贴士131:特殊成员函数和`= default`
Sator推出Web3游戏“Satorspace” ,并上线Huobi
DNS series (I): why does the updated DNS record not take effect?