public class DialogActivity extends Activity {

  //进度对话框
    ProgressDialog progressDialog;

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Dialog dialog = new AlertDialog.Builder(DialogActivity.this)
                .setTitle("登录提示")
                // 设置标题
                .setMessage("这里需要登录!")
                // 设置内容
                .setPositiveButton("确定", new DialogInterface.OnClickListener() {

@Override
                    public void onClick(DialogInterface dialog, int whichButton) {
                        // 点击确定转向登录框
                        LayoutInflater layoutInflater = LayoutInflater
                                .from(DialogActivity.this);
                        // 得到自定义对话框
                        final View dialogView = layoutInflater.inflate(
                                R.layout.dialog_login, null);
                        // 创建对话框
                        AlertDialog dlg = new AlertDialog.Builder(
                                DialogActivity.this).setTitle("登录框")
                                .setView(dialogView)
                                // 设置自定义对话框的的样式
                                .setPositiveButton("确定",// 设置确定按钮
                                        new DialogInterface.OnClickListener() {// 设置确定按钮事件监听
                                            @Override
                                            public void onClick(
                                                    DialogInterface dialog,
                                                    int whichButton) {
                                                // 输入完成,点击确定按钮开始登录,显示进度对话框
                                                progressDialog = ProgressDialog
                                                        .show(DialogActivity.this,
                                                                "请等待……",
                                                                "正在为你登录……",
                                                                true);
                                                new Thread() {
                                                    public void run() {
                                                        try {
                                                            sleep(3000);
                                                        } catch (Exception e) {
                                                            e.printStackTrace();
                                                        } finally {
                                                            // 登录结束,取消进度对话框
                                                            progressDialog
                                                                    .dismiss();
                                                            DialogActivity.this.finish();//<自己加的>
                                                        }
                                                    }
                                                }.start();
                                            }
                                        }).setNegativeButton("取消",// 设置取消按钮
                                        new DialogInterface.OnClickListener() {

@Override
                                            public void onClick(
                                                    DialogInterface dialog,
                                                    int whichButton) {
                                                // 点击取消按钮退出应用程序
                                                DialogActivity.this.finish();

}
                                        }).create();
                        dlg.show();
                    }
                })

.setNeutralButton("退出", new DialogInterface.OnClickListener() {

@Override
                    public void onClick(DialogInterface dialog, int whichButton) {
                        // 点击退出按钮,退出应用程序
                        DialogActivity.this.finish();
                    }
                }).create();// 创建按钮
        // 显示对话框
        dialog.show();
    }

}

Android——Dialog的更多相关文章

  1. Android Dialog使用举例

    在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,在我们使用Android的过程中,我归纳了一 ...

  2. Android Dialog 创建上下文菜单

    Android Dialog中的listview创建上下文菜单 listView.setOnCreateContextMenuListener(new OnCreateContextMenuListe ...

  3. Android控件——7种形式的Android Dialog使用举例(转载)

    在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,在我们使用Android的过程中,我归纳了一 ...

  4. Android Dialog对话框的七种形式的使用

    参考资料:http://www.oschina.net/question/54100_32486 注:代码进行了整理 在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询 ...

  5. 8种形式的Android Dialog使用举例

    在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,在我们使用Android的过程中,我归纳了一 ...

  6. android Dialog实例

    Dialog类 public class DialogUtil { public static Dialog EditDialog(Activity context,View view){ final ...

  7. android dialog

    /** * @Title MenuTest.java * @package com.example.standardview * @since * @version 1.0.0 * @author V ...

  8. android dialog 有关token的问题

    android中的dialog显示一般是显示在宿主context里面,但context有几种模式,我今天遇到问题就是在BroadcastReceiver广播里面构造对话框后显示出现的问题:androi ...

  9. android dialog 模拟新浪、腾讯title弹框效果

    http://blog.csdn.net/jj120522/article/details/7764183 首先我们看一下新浪微博的效果(其它就是一个dialog):                点 ...

  10. Android Dialog用法

    摘要: 创建对话框 一个对话框一般是一个出现在当前Activity之上的一个小窗口. 处于下面的Activity失去焦点, 对话框接受所有的用户交互. 对话框一般用于提示信息和与当前应用程序直接相关的 ...

随机推荐

  1. LINUX常用配置及命令

    一.   Fedora系统配置 1.      [设置网卡IP] 步骤如下: 1)     用root用户登陆,打开/etc/sysconfig/network-scripts/ifcfg-eth0文 ...

  2. 【故障处理】ORA-12162: TNS:net service name is incorrectly specified

    本文将给大家阐述一个因未设置系统环境变量ORACLE_SID导致ORA-12162错误的案例.希望大家有所思考. 1.获得有关ORA-12162报错信息的通用表述信息[oracle@asdlabdb0 ...

  3. [svn]svn: E155015: 提交失败(细节如下) 解决办法

    svn 出现冲突是经常发生的事,最近改用命令操作svn,用界面电脑有些反应慢 出现冲突使用svn 命令肯定也是可以解决的: 查看警告信息提示冲突的文件,执行 svn resolved <文件名& ...

  4. CUICatalog: Invalid asset name supplied: (null) _configureCellForDisplay:forIndexPath

    1.CUICatalog: Invalid asset name supplied: (null) 如果连续出现几个这样的错误,表示UIImageView为空 那么就需要检查UIImageView是否 ...

  5. [ZZ] MATLAB中Legend的一些控制方法

    http://www.eetop.cn/blog/html/03/6503-23349.html 如果一个图中我们画了n条曲线,但是我们只想加图例说明(legend)的只有m条 (m<n).网上 ...

  6. bzoj1760 [Baltic2009]Triangulation

    给定一个多边形的三角剖分(n<=1e5),且每个三角形有其颜色,问最多可以把这个三角剖分分成几个联通的部分,使任何一种颜色不出现在多个连通块中 建出三角剖分对应的树,同种颜色的点之间的路径是不能 ...

  7. mac 下使用wireshark监听网络上的数据

    分三个步骤:    1.wireshark安装        wireshark运行需要mac上安装X11,mac 10.8的系统上默认是没有X11的.先去http://xquartz.macosfo ...

  8. Red hat 5挂载U盘

    装在虚拟机上的Linux 一.挂载U盘                                                                                  ...

  9. mapreduce任务中Shuffle和排序的过程

    mapreduce任务中Shuffle和排序的过程 流程分析: Map端: 1.每个输入分片会让一个map任务来处理,默认情况下,以HDFS的一个块的大小(默认为64M)为一个分片,当然我们也可以设置 ...

  10. 问对于一个给定的n,怎样才能用最少的步骤将它变到1

    如果n为偶数,则将它除以2,如果n为奇数,则将它加1或者减1.问对于一个给定的n,怎样才能用最少的步骤将它变到1.例如:n= 61n-- 60n/2 30n/2 15n++ 16n/2 8n/2 4n ...