提示对话框AlterDialog 与进度条对话框ProcessDialog

 设计并实现对话框提示界面,完成以下功能

1、界面上面有一个按钮,点击按钮后弹出一个用户登录的对话框;

2、在用户登录对话框中,输入用户名和密码,单击确定后,弹出一个登录等待对话框,等5s后返回最初界面并显示登录成功


实验代码:

MainActivity.java

package com.example.dialog;

 

import com.example.dialog.MainActivity;

import com.example.dialog.R;

import android.app.Activity;

import android.app.AlertDialog;

import android.app.Dialog;

import android.app.ProgressDialog;

import android.content.DialogInterface;

import android.content.DialogInterface.OnCancelListener;

import android.os.Bundle;

import android.view.LayoutInflater;

import android.view.Menu;

import android.view.MenuItem;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.EditText;

import android.widget.TextView;

import android.widget.Toast;

 

public class MainActivity extends Activity {

    Button register;

    ProgressDialog progressDialog;

 

    @Override

    protected void onCreate(Bundle savedInstanceState) {

       super.onCreate(savedInstanceState);

       setContentView(R.layout.activity_main);

       register=(Button)findViewById(R.id.btn_register);

 

       register.setOnClickListener(new OnClickListener(){

 

           @Override

           public void onClick(View v) {

              AlertDialog.Builder inputDialog = newAlertDialog.Builder(

                     MainActivity.this);

              inputDialog.setTitle("用户登录对话框");

              View view=LayoutInflater.from(MainActivity.this).inflate(R.layout.dialog,null);

              final EditTextusername=(EditText)findViewById(R.id.etxt_username);

              final EditTextpassword=(EditText)findViewById(R.id.etxt_password);

              inputDialog.setView(view);

              inputDialog.setPositiveButton("确定",

                     new DialogInterface.OnClickListener() {

                         @Override

                         publicvoid onClick(DialogInterface dialog,int which) {

                            finalint MAX_PROGRESS = 5;

                             progressDialog =new ProgressDialog(MainActivity.this);

                              progressDialog.setTitle("");

                              progressDialog.setMessage("登录中...");

                              progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);

                              progressDialog.setCancelable(false);

                              progressDialog.show();

                             

                              new Thread(new Runnable(){

                                @Override

                                publicvoid run() {

                                   int progress = 0;

                                   while (progress < MAX_PROGRESS){

                                       try {

                                          Thread.sleep(1000);

                                          progress++;

                                          progressDialog.incrementProgressBy(progress);

                                       } catch (InterruptedException e) {

                                          e.printStackTrace();

                                       }

                                   }

                                   progressDialog.cancel();

                                }

                             }).start();    

                              progressDialog.setOnCancelListener(newDialogInterface.OnCancelListener(){

 

                                @Override

                                publicvoid onCancel(DialogInterface dialog) {

                                    Toast.makeText(MainActivity.this,"用户成功登录",Toast.LENGTH_SHORT).show();

                                  

                                }

                             });  

                     }

                     }).show();             

           }

       });

    }

}

 

 

 

 

 

 

activity_main.xml

<?xmlversion="1.0"encoding="utf-8"?>

<LinearLayout

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:orientation="vertical"

    xmlns:android="http://schemas.android.com/apk/res/android">

    <TextView

       android:layout_width="wrap_content"

       android:layout_height="wrap_content"

       android:text="Dialog作业"

       />

    <Button

       android:id="@+id/btn_register"

       android:layout_width="wrap_content"

       android:layout_height="wrap_content"

       android:text="登录  对话框"

       />

</LinearLayout>

 

 

 

 

 

 

dialog.xml

<?xmlversion="1.0"encoding="utf-8"?>

<LinearLayout

    xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:orientation="vertical">

    <LinearLayout

       android:layout_width="fill_parent"

       android:layout_height="wrap_content"  

        >

    <TextView

       android:id="@+id/tv_username"

       android:layout_width="wrap_content"

       android:layout_height="wrap_content"  

       android:text="用户名:"  

       />

    <EditText

       android:id="@+id/etxt_username"

       android:layout_width="fill_parent"

       android:layout_height="wrap_content"

       />

    </LinearLayout>

   

    <LinearLayout

        android:layout_width="fill_parent"

       android:layout_height="wrap_content"  

         >

    <TextView

       android:id="@+id/tv_password"

       android:layout_width="wrap_content"

       android:layout_height="wrap_content"  

       android:text="    码:"

 

       />

     <EditText

       android:id="@+id/etxt_password"

       android:layout_width="fill_parent"

       android:layout_height="wrap_content"  

       android:password="true"

       />

     </LinearLayout>

 </LinearLayout>

 


效果图:







  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值