这三个Dialog都是AlertDialog的子类。

①DatePickerDialog

  1.创建DatePickerDialog的实例;

  2.通过Calendar类获得系统时间;

  3.通过DatePickDialog.OnDateSetListener()来绑定监听器;

  4.通过onDateSet(DatePicker datePicker, int year, int month, int dayOfMonth)来获取时间;

  5.调用show()方法展示。

    public void dateBn(View v)
{
Calendar calendar = Calendar.getInstance();
new DatePickerDialog(this,
new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
String text = "您选择了: " + year + "年" + (month + 1) + "月" + dayOfMonth + "日";
Toast.makeText(MainActivity.this, text, Toast.LENGTH_SHORT).show();
}
},
calendar.get(Calendar.YEAR),
calendar.get(Calendar.MONTH),
calendar.get(Calendar.DAY_OF_MONTH)).show();
}

  这里是对按键声明了一个dateBn的方法,在这里将方法实现了。

②TimePickerDialog

  1.创建TimePickerDialog的实例;

  2.通过Calendar类获得系统时间;

  3.通过TimePickDialog.OnTimeSetListener()来绑定监听器;

  4.通过onTimeSet(TimePicker TimePicker, int minute)来获取时间;

  5.调用show()方法展示。

Button timeBn = (Button)findViewById(R.id.timeBn);
timeBn.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
Calendar calendar = Calendar.getInstance();
new TimePickerDialog(MainActivity.this,
new TimePickerDialog.OnTimeSetListener()
{
public void onTimeSet(TimePicker timePicker, int hourOfDay, int minute)
{
EditText show = (EditText)findViewById(R.id.edit);
show.setText("您选择了: " + hourOfDay + "时" + minute + "分");
}
},
calendar.get(Calendar.HOUR_OF_DAY),
calendar.get(Calendar.MINUTE),
true).show();
}
});

  这里绑定了一个按钮的点击事件,确认之后会在EditText中显示出选择的具体的时间。

③ProgressDialog

Button timeBn = (Button)findViewById(R.id.timeBn);
//progressDialog对应的按钮 final Button progress = (Button)findViewById(R.id.progressBn);
progress.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
ProgressDialog progressDialog = new ProgressDialog(MainActivity.this);
progressDialog.setTitle("✪ω✪|任务进行中|✪ω✪");
progressDialog.setMessage("(´・ω・`)请稍后(´・ω・`)");
//设置为可以取消
progressDialog.setCancelable(true);
//设置为转圈
//progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
progressDialog.show();
}
});

  设置为圆圈形式的进度条

  设置为水平方向的进度条

android入门 — ProgressDialog/DatePickerDialog/TimePickerDialog的更多相关文章

  1. android中提示&对话框----ProgressDialog&DatePickerDialog &TimePickerDialog&PopupWindow

    ProgressDialog(精度条对话框): 1.直接调用ProgressDialog提供的静态方法show()显示 2.创建ProgressDialog,再设置对话框的参数,最后show()出来 ...

  2. android 开发DatePickerDialog/TimePickerDialog对话框的实现

    AndroidAPI提供了Dialog对话框控件,DatePickerDialog/TimePickerDialog均是AlertDialog的子类,通过DatePickerDialog/TimePi ...

  3. 小猪的Android入门之路 Day 3 - part 3

    小猪的Android入门之路 Day 3 - part 3 各种UI组件的学习 Part 3 本节引言: 在前面两个部分中我们对Android中一些比較经常使用的基本组件进行了一个了解, part 1 ...

  4. Android入门1:使用VideoView和MediController播放视频

    最近在搞Android,入门曲线还是挺陡峭的,主要还是自己对Java的理解不够深入.前后学习了几天,把最近学习到的一些知识点总结归纳一下,正所谓温故而知新. 目前想搞一个禁播视频站,主要内容都是一些大 ...

  5. Android 之 ProgressDialog用法介绍

    布局文件测试: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" androi ...

  6. Android入门(十二)SQLite事务、升级数据库

    原文链接:http://www.orlion.ga/610/ 一.事务 SQLite支持事务,看一下Android如何使用事务:比如 Book表中的数据都已经很老了,现在准备全部废弃掉替换成新数据,可 ...

  7. 10.Android之ProgressDialog进度对话框学习

    APP应用中经常会下载某些东西,这里面有涉及到进度对话框,今天来学习下. 首先,布局里放进两个按钮,点击一个显示条形进度条,另一个显示圆形进度条.代码如下: <?xml version=&quo ...

  8. 【转】Xamarin.Android 入门之:Xamarin+vs2015 环境搭建

    Xamarin.Android 入门之:Xamarin+vs2015 环境搭建   一.前言 此篇博客主要写了如何使用搭建xamarin开发的环境,防止我自己万一哪天电脑重装系统了,可以直接看这篇博客 ...

  9. android 入门 006(sqlite增删改查)

    android 入门 006(sqlite增删改查) package cn.rfvip.feb_14_2_sqlite; import android.content.Context; import ...

随机推荐

  1. Vue使用moment.js处理前端时间格式问题

    使用moment.js处理格式显示问题: 1.首先引入moment.js插件 npm install moment --save 2.入口文件main.js中导入并使用 3.在项目中使用即可:data ...

  2. TinyMCE插件:RESPONSIVE filemanager 9 安装与配置

    RESPONSIVE filemanager 功能: 文件上传 文件下载 重命名文件 删除文件 新建文件夹 为每个用户创建子目录 上传文件效果图: 浏览文件效果图: 文件说明: filemanager ...

  3. webpack管理输出

    管理html的bundle依赖 html-webpack-plugin可以自动给html添加bundle文件 npm install --save-dev html-webpack-plugin co ...

  4. CentOS6安装各种大数据软件 第一章:各个软件版本介绍

    相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...

  5. 分享:Unity3D模型跟随鼠标移动功能的小脚本 (屏幕坐标和三维空间坐标转换)

    using UnityEngine; using System.Collections; public class ModelsPosChange : MonoBehaviour { RaycastH ...

  6. 了解MapReduce_2

    再写MapReduce执行流程之前,首先先对MapReduce有一些了解: 1. 简介 MapReduce是一个计算框架,既然是做计算的框架,那么表现的形式上就有输入,操作输入,得到结果2.主从结构 ...

  7. ARM设备树

    学习目标:学习设备树相关内容: 一.概念 在Linux 2.6中,ARM架构的板极硬件细节过多地被硬编码在arch/arm/plat-xxx和arch/arm/mach-xxx,在kernel中存在大 ...

  8. 20155307 2016-2017 《Java程序设计》第三次实验报告

    (一)敏捷开发与XP 敏捷开发是一种以人为核心.迭代.循序渐进的开发方法."敏捷流程"是一系列价值观和方法论的集合.从2001年开始,一些软件界的专家开始倡导"敏捷&qu ...

  9. VBox&vmware虚拟机安装Linux及Linux基础入门学习

    VBox&vmware虚拟机安装Linux及Linux基础入门学习 通过VMware workstation安装Linux 在安装虚拟机之前,我特意上网搜索了一下目前常使用的虚拟机软件,了解了 ...

  10. PHP学习笔记之析构函数以及static,self,parent关键字

    引用 $jordan1 = &$jordan; 当jordan1 = null; //此时会直接调用析构函数 而当无&时,就需要等到所有的引用都为null时,才调用析构函数析构  乔丹 ...