Android用户界面对话框之警告对话框(ALertDialog)

对话框是程序运行中的弹出窗口。Android系统提供了四种对话框:警告对话框(AlertDialg)、进度对话框(ProgressDialog)、日期选择对话框(DatePickerDialog)和时间对话框(TimePickerDialog)。在此先讲解AlertDialog,提他对话框在后续章节会进行讲述。

AlertDialog是一个提示窗口,要求用户做出选择。该对话框中一般会有几个选择按钮、标题信息和提示信息。

在程序中创建对话框步骤如下:

1、获得AlertDialog的静态内部类Builder对象,由该类来创建对话框。

2、通过Builder对象设置对话框的标题、按钮以及按钮将要响应的事件。

3、调用Builder的create()方法创建对话框。

4、调用AlertDialog的show()方法显示对话框。

案例一:下面创建了一个具有”是“、”否“按钮和提示信息的对话框,用来确认用户的操作。

  1. package com.xiaomo.ui;  
  2.   
  3. import android.app.Activity;  
  4. import android.app.AlertDialog;  
  5. import android.content.DialogInterface;  
  6. import android.os.Bundle;  
  7. import android.view.View;  
  8. import android.view.View.OnClickListener;  
  9. import android.widget.Button;  
  10. import android.widget.TextView;  
  11.   
  12. import com.example.helloworld.R;  
  13.   
  14. public class ALert_Dialog extends Activity {  
  15.   
  16.     // 声明TextView对象  
  17.     private TextView myTextView;  
  18.     // 声明Button对象  
  19.     private Button myButton;  
  20.   
  21.     @Override  
  22.     protected void onCreate(Bundle savedInstanceState) {  
  23.         super.onCreate(savedInstanceState);  
  24.         setContentView(R.layout.activity_main);  
  25.         myTextView = (TextView) findViewById(R.id.main_text);  
  26.         myButton = (Button) findViewById(R.id.main_button);  
  27.         // 实例化AlertDailog.Builder对象  
  28.         final AlertDialog.Builder builder = new AlertDialog.Builder(this);  
  29.         // 添加按钮的单击事件  
  30.         myButton.setOnClickListener(new OnClickListener() {  
  31.             public void onClick(View v) {  
  32.                 // 设置显示信息  
  33.                 builder.setMessage("确定要删除该记录吗?")  
  34.                         .  
  35.                         // 设置确定按钮  
  36.                         setPositiveButton("是",  
  37.                                 new DialogInterface.OnClickListener() {  
  38.                                     // 单击事件  
  39.                                     public void onClick(DialogInterface dialog,  
  40.                                             int which) {  
  41.                                         // 设置TextView文本  
  42.                                         myTextView.setText("删除成功!");  
  43.                                     }  
  44.                                 }).  
  45.                         // 设置取消按钮  
  46.                         setNegativeButton("否",  
  47.                                 new DialogInterface.OnClickListener() {  
  48.                                     public void onClick(DialogInterface dialog,  
  49.                                             int which) {  
  50.                                         myTextView.setText("取消删除!");  
  51.                                     }  
  52.                                 });  
  53.                 // 创建对话框  
  54.                 AlertDialog ad = builder.create();  
  55.                 // 显示对话框  
  56.                 ad.show();  
  57.             }  
  58.         });  
  59.     }  
  60. }  


案例二:下面创建了一个像上下文菜单一样来设置多个条目选项。

  1. package com.xiaomo.ui;  
  2.   
  3. import android.app.Activity;  
  4. import android.app.AlertDialog;  
  5. import android.content.DialogInterface;  
  6. import android.os.Bundle;  
  7. import android.view.View;  
  8. import android.view.View.OnClickListener;  
  9. import android.widget.Button;  
  10. import android.widget.TextView;  
  11.   
  12. import com.example.helloworld.R;  
  13.   
  14. public class Context_Alert_Dialog extends Activity {  
  15.   
  16.     //声明组件  
  17.     private TextView myTextView;  
  18.     private Button myButton;  
  19.   
  20.     @Override  
  21.     protected void onCreate(Bundle savedInstanceState) {  
  22.         super.onCreate(savedInstanceState);  
  23.         setContentView(R.layout.activity_main);  
  24.         //获取组件实例  
  25.         myTextView = (TextView) findViewById(R.id.main_text);  
  26.         myButton = (Button) findViewById(R.id.main_button);  
  27.         //对话框选项数组  
  28.         final String[] items = { "奶茶""咖啡""果汁" };  
  29.         //实例化AlertDialog.Builder实例  
  30.         final AlertDialog.Builder builder = new AlertDialog.Builder(this);  
  31.         //添加按钮单击监听器  
  32.         myButton.setOnClickListener(new OnClickListener() {  
  33.             public void onClick(View v) {  
  34.                 //设置标题和选项  
  35.                 builder.setTitle("请点餐").setItems(items,  
  36.                         new DialogInterface.OnClickListener() {  
  37.                             public void onClick(DialogInterface dialog,  
  38.                                     int which) {  
  39.                                 //设置文本内容为选中的选项  
  40.                                 myTextView.setText(items[which]);  
  41.                             }  
  42.                         });  
  43.                 //以单项按钮样式显示  
  44. //              builder.setTitle("请点餐").setSingleChoiceItems(items, -1,  
  45. //                      new DialogInterface.OnClickListener() {  
  46. //                          public void onClick(DialogInterface dialog,  
  47. //                                  int which) {  
  48. //                              myTextView.setText(items[which]);  
  49. //                          }  
  50. //                      });  
  51.                 AlertDialog ad = builder.create();  
  52.                 ad.show();  
  53.             }  
  54.         });  
  55.     }  
  56. }  

摘自 :http://blog.csdn.net/cl05300629/article/details/17962643

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值