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

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 16:31   958   0

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

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

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

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

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

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

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

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

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();
   }
  });
 }
}


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

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 作者:伫望碧落
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP