"安卓开发对话框大全" 在Android应用开发中,对话框(Dialog)是一种重要的用户界面组件,用于向用户提供额外的信息或者与用户进行交互。本示例代码展示了多种类型的对话框在Android中的实现,包括普通对话框、带有按钮的对话框、含有自定义视图的对话框以及日期和时间选择器对话框。 1. **普通对话框** (initAlertDialog1) `initAlertDialog1` 方法创建了一个简单的无按钮的对话框,只有一个标题"提示"和一条消息"最简单对话框"。通过`Builder`类实例化`AlertDialog`,并调用`setTitle()`和`setMessage()`设置标题和内容。最后,`create()`方法创建了实际的对话框对象。 2. **带按钮的对话框** (initAlertDialog2) `initAlertDialog2` 方法在普通对话框的基础上添加了"确定"和"取消"两个按钮。`setPositiveButton()`和`setNegativeButton()`分别设置这些按钮及其点击事件监听器。当用户点击按钮时,会触发对应的`OnClickListener`,显示相应的`Toast`消息或关闭对话框。 3. **包含自定义视图的对话框** (initAlertDialog3) `initAlertDialog3` 方法展示了一个包含自定义视图的对话框,视图由`loadView()`方法加载。在这个视图中,有用于输入用户名和密码的`EditText`字段。当用户点击"确定"按钮时,`etUserName`和`etPassword`的文本会被读取并显示在`Toast`上。`setView()`方法用于将自定义视图添加到对话框中。 4. **日期选择器对话框** (initDatePickerDialog) `initDatePickerDialog` 方法创建了一个`DatePickerDialog`,用户可以从中选择日期。`OnDateSetListener`接口的实现用于处理日期选择事件,当用户设定好日期后,会显示一个包含选定日期的`Toast`。 5. **时间选择器对话框** (initTimePickerDialog) 类似地,`initTimePickerDialog` 创建了一个`TimePickerDialog`,让用户选择小时和分钟。`OnTimeSetListener`监听时间的设定,并在用户选择时间后显示一个`Toast`。 这些对话框在Android开发中非常常见,它们可以提供丰富的用户交互方式,如确认操作、获取用户输入等。对话框的使用可以根据应用需求进行定制,以满足各种场景下的用户交互需求。在实际开发中,开发者可以根据需要选择不同类型的对话框,并结合业务逻辑来实现特定的功能。
import java.util.Calendar;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.app.DatePickerDialog;
import android.app.DatePickerDialog.OnDateSetListener;
import android.app.ProgressDialog;
import android.app.TimePickerDialog;
import android.app.TimePickerDialog.OnTimeSetListener;
import android.content.DialogInterface;
import android.content.DialogInterface.OnMultiChoiceClickListener;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.TimePicker;
import android.widget.Toast;
public class MainActivity extends Activity {
private AlertDialog dialog1;
private AlertDialog dialog2;
private AlertDialog dialog3;
private AlertDialog dialog4;
private AlertDialog dialog5;
private TimePickerDialog dialog7;
private DatePickerDialog dialog8;
private EditText etUserName, etPassword;
private boolean isFlag;
private void initTimePickerDialog(){
dialog7 = new TimePickerDialog(this, new OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
Toast.makeText(MainActivity.this, "Time:"+hourOfDay+":"+minute, Toast.LENGTH_LONG).show();
}
}, 0, 0, false);
}
private void initDatePickerDialog(){
dialog8 = new DatePickerDialog(this, new OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
Toast.makeText(MainActivity.this, "Date:"+year+":"+(monthOfYear+1)+":"+dayOfMonth, Toast.LENGTH_LONG).show();
}
}, 2015, Calendar.SEPTEMBER, 17);
}
private void initAlertDialog1() {
Builder builder = new Builder(this);
剩余10页未读,继续阅读
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- C++标准程序库:权威指南
- Java解惑:奇数判断误区与改进方法
- C++编程必读:20种设计模式详解与实战
- LM3S8962微控制器数据手册
- 51单片机C语言实战教程:从入门到精通
- Spring3.0权威指南:JavaEE6实战
- Win32多线程程序设计详解
- Lucene2.9.1开发全攻略:从环境配置到索引创建
- 内存虚拟硬盘技术:提升电脑速度的秘密武器
- Java操作数据库:保存与显示图片到数据库及页面
- ISO14001:2004环境管理体系要求详解
- ShopExV4.8二次开发详解
- 企业形象与产品推广一站式网站建设技术方案揭秘
- Shopex二次开发:触发器与控制器重定向技术详解
- FPGA开发实战指南:创新设计与进阶技巧
- ShopExV4.8二次开发入门:解决升级问题与功能扩展