您的位置:首页 > 移动开发 > Android开发

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

2014-01-09 09:49 411 查看
对话框是程序运行中的弹出窗口。Android系统提供了四种对话框:警告对话框(AlertDialg)、进度对话框(ProgressDialog)、日期选择对话框(DatePickerDialog)和时间对话框(TimePickerDialog)。在此先讲解AlertDialog,提他对话框在后续章节会进行讲述。
AlertDialog是一个提示窗口,要求用户做出选择。该对话框中一般会有几个选择按钮、标题信息和提示信息。

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

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

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

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

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

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

[java]
view plaincopy





package com.xiaomo.ui;  
  
import android.app.Activity;  
import android.app.AlertDialog;  
import android.content.DialogInterface;  
import android.os.Bundle;  
import android.view.View;  
import android.view.View.OnClickListener;  
import android.widget.Button;  
import android.widget.TextView;  
  
import com.example.helloworld.R;  
  
public class ALert_Dialog extends Activity {  
  
    // 声明TextView对象  
    private TextView myTextView;  
    // 声明Button对象  
    private Button myButton;  
  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.activity_main);  
        myTextView = (TextView) findViewById(R.id.main_text);  
        myButton = (Button) findViewById(R.id.main_button);  
        // 实例化AlertDailog.Builder对象  
        final AlertDialog.Builder builder = new AlertDialog.Builder(this);  
        // 添加按钮的单击事件  
        myButton.setOnClickListener(new OnClickListener() {  
            public void onClick(View v) {  
                // 设置显示信息  
                builder.setMessage("确定要删除该记录吗?")  
                        .  
                        // 设置确定按钮  
                        setPositiveButton("是",  
                                new DialogInterface.OnClickListener() {  
                                    // 单击事件  
                                    public void onClick(DialogInterface dialog,  
                                            int which) {  
                                        // 设置TextView文本  
                                        myTextView.setText("删除成功!");  
                                    }  
                                }).  
                        // 设置取消按钮  
                        setNegativeButton("否",  
                                new DialogInterface.OnClickListener() {  
                                    public void onClick(DialogInterface dialog,  
                                            int which) {  
                                        myTextView.setText("取消删除!");  
                                    }  
                                });  
                // 创建对话框  
                AlertDialog ad = builder.create();  
                // 显示对话框  
                ad.show();  
            }  
        });  
    }  
}  



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

[java]
view plaincopy





package com.xiaomo.ui;  
  
import android.app.Activity;  
import android.app.AlertDialog;  
import android.content.DialogInterface;  
import android.os.Bundle;  
import android.view.View;  
import android.view.View.OnClickListener;  
import android.widget.Button;  
import android.widget.TextView;  
  
import com.example.helloworld.R;  
  
public class Context_Alert_Dialog extends Activity {  
  
    //声明组件  
    private TextView myTextView;  
    private Button myButton;  
  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.activity_main);  
        //获取组件实例  
        myTextView = (TextView) findViewById(R.id.main_text);  
        myButton = (Button) findViewById(R.id.main_button);  
        //对话框选项数组  
        final String[] items = { "奶茶", "咖啡", "果汁" };  
        //实例化AlertDialog.Builder实例  
        final AlertDialog.Builder builder = new AlertDialog.Builder(this);  
        //添加按钮单击监听器  
        myButton.setOnClickListener(new OnClickListener() {  
            public void onClick(View v) {  
                //设置标题和选项  
                builder.setTitle("请点餐").setItems(items,  
                        new DialogInterface.OnClickListener() {  
                            public void onClick(DialogInterface dialog,  
                                    int which) {  
                                //设置文本内容为选中的选项  
                                myTextView.setText(items[which]);  
                            }  
                        });  
                //以单项按钮样式显示  
//              builder.setTitle("请点餐").setSingleChoiceItems(items, -1,  
//                      new DialogInterface.OnClickListener() {  
//                          public void onClick(DialogInterface dialog,  
//                                  int which) {  
//                              myTextView.setText(items[which]);  
//                          }  
//                      });  
                AlertDialog ad = builder.create();  
                ad.show();  
            }  
        });  
    }  
}  


摘自 :http://blog.csdn.net/cl05300629/article/details/17962643
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息