package com.mycommondialog.activity;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.AlertDialog.Builder;
import android.content.DialogInterface;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class CommonDialogActivity extends Activity {
final int COMMON_DIALOG = 1;
private Dialog dialog = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.common_dialog_layout);
Button button = (Button) findViewById(R.id.button);
View.OnClickListener listener = new View.OnClickListener() {
@Override
public void onClick(View view) {
showDialog(COMMON_DIALOG);
}
};
button.setOnClickListener(listener);
}
/*
* 使用onCreateDialog(int)来管理对话框的状态, 那么每次对话框被解除时, 该对话框对象的状态会被Activity保存. 调用
* removeDialog(int)将所有该对象的内部引用移除 如本程序那样,如果不加removeDialog,那么显示的是第一次的内容
*/
@Override
protected Dialog onCreateDialog(int id) {
EditText editText = (EditText) findViewById(R.id.editText);
switch (id) {
case COMMON_DIALOG:
Builder builder = new AlertDialog.Builder(this);
builder.setIcon(R.drawable.dialog);
builder.setTitle(R.string.button);
builder.setMessage(editText.getText());
DialogInterface.OnClickListener listener = new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// 将此处移除后,无论怎么修改EditText内容
// 每次点击显示普通对话框,总是第一次的内容
// 如果想更新EditText内容就得加removeDialog
removeDialog(COMMON_DIALOG);
}
};
builder.setPositiveButton(R.string.ok, listener);
dialog = builder.create();
break;
default:
break;
}
Log.e("onCreateDialog", "onCreateDialog");
return dialog;
}
}
大富大贵7
- 粉丝: 393
- 资源: 8868
最新资源
- IP网络的仿真及实验.doc
- Metropolis-Hastings算法和吉布斯采样(Gibbs sampling)算法Python代码实现
- 高效排序算法:快速排序Java与Python实现详解
- 基于stm32风速风向测量仪V2.0
- 多边形框架物体检测27-YOLO(v5至v11)、COCO、CreateML、Paligemma、TFRecord、VOC数据集合集.rar
- 国产文本编辑器:EverEdit用户手册 1.1.0
- 3.0(1).docx
- 多种土地使用类型图像分类数据集【已标注,约30,000张数据】
- 智慧校园数字孪生,三维可视化
- GigaDevice.GD32F4xx-DFP.2.1.0 器件安装包
- 基于 Spring Cloud 的一个分布式系统套件的整合 具备 JeeSite4 单机版的所有功能,统一身份认证,统一基础数据管理,弱化微服务开发难度
- opcclient源码OPC客户端 DA客户端源码(c#开发) C#开发,源码,可二次开发 本项目为VS2010开发,可转为VS其他版本的编辑器打开项目 已应用到多个行业的几百个应用现场,长时间运
- IMG_4525.jpg
- STM32F427+rtthread下的bootload 网口(webclient)+串口(ymodem)传输,代码无质量,谨慎使用
- FastAdmin后台框架开源且可以免费商用,一键生成CRUD, 一款基于ThinkPHP和Bootstrap的极速后台开发框架,基于Auth验证的权限管理系统,一键生成 CRUD,自动生成控制器等
- GD32F5XX系列的产品数据手册,学习手册,器件安装包
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈