对话框是Android中不可或缺的,在使用对话框的时候,需要使用AlertDialog.Builder类。当然处理系统默认的对话框外,还可以自定义对话框,如果对话框设置了按钮,那么要对其进行事件监听OnClickListener
下面的是一个用AlertDialog.Builder类和自定义的对话框的实例,当点击确定时,转移到登陆对话框,当输入用户名和密码后,转移到登陆进度对话框
 
这里的自定义对话框是由两个TextView和两个EditText组成,也就是那个登录对话框,自定义对话框的布局文件是l文件,见下面
 
另外呢,使用AlertDialog来创建对话框,需要了解一下几个方法
setTitle();给对话框设置标题
setIcon();给对话框设置图标
setMessage();设置对话框的提示信息
setItems();设置对话框要显示的一个list,一般用于显示几个命令时
setSingleChoiceItems();设置对话框显示一个单选的List
setMultiChoiceItems();设置对话框显示一系列的复选框
setPositiveButton();给对话框添加"yes"按钮
setNegativeButton();给对话框添加"no"按钮
 
DialogTest.java
 
Java代码 
1. package org.hualang.dialog; 
2.  
3. import android.app.Activity; 
4. import android.app.AlertDialog; 
5. import android.app.Dialog; 
6. import android.app.ProgressDialog; 
7. import&t.DialogInterface; 
alertdialog使用方法8. import android.os.Bundle; 
9. import android.view.LayoutInflater; 
10. import android.view.View; 
11.  
12. public class DialogTest extends Activity { 
13.     /** Called when the activity is first created. */ 
14.     ProgressDialog mydialog; 
15.     @Override 
16.     public void onCreate(Bundle savedInstanceState) { 
17.         Create(savedInstanceState); 
18.         setContentView(R.layout.main); 
19.         Dialog dialog=new AlertDialog.Builder(DialogTest.this) 
20.         .setTitle("登录提示")//设置标题 
21.         .setMessage("这里需要登录")//设置对话框显示内容 
22.         .setPositiveButton("确定", //设置确定按钮 
23.         new DialogInterface.OnClickListener() { 
24.             @Override 
25.             public void onClick(DialogInterface dialog, int which) { 
26.                 //点击确定转向登录对话框 
27.                 LayoutInflater factory=LayoutInflater.from(DialogTest.this); 
28.                 //得到自定义对话框 
29.                 final View DialogView=factory.inflate(R.layout.dialog, null); 
30.                 //创建对话框 
31.                 AlertDialog dlg=new AlertDialog.Builder(DialogTest.this) 
32.                 .setTitle("登录框") 
33.                 .setView(DialogView)//设置自定义对话框样式 
34.                 .setPositiveButton("确定",   
35.                 new DialogInterface.OnClickListener() {//设置监听事件 
36.                      
37.                     @Override 
38.                     public void onClick(DialogInterface dialog, int which) { 
39.                         // 输入完成后点击确定开始登录 
40.                         mydialog=ProgressDialog.show(DialogTest.this, "请稍等...", "正在登录...",true); 
41.                         new Thread() 
42.                         { 
43.                             public void run() 
44.                             { 
45.                                 try 
46.                                 { 
47.                                     sleep(3000); 
48.                                 }catch(Exception e) 
49.                                 { 
50.                                     e.printStackTrace(); 
51.                                 }finally 
52.                                 { 
53.                                     //登录结束,取消mydialog对话框 
54.                                     mydialog.dismiss(); 
55.                                 } 
56.                             } 
57.                         }.start(); 
58.                     } 
59.                 }).setNegativeButton("取消",//设置取消按钮 
60.                     new DialogInterface.OnClickListener() { 
61.                          
62.                         @Override 
63.                         public void onClick(DialogInterface dialog, int which) { 
64.                             //点击取消后退出程序 
65.                             DialogTest.this.finish(); 

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。