这三个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. pycharm社区版新建django文件不友好操作

    一.cmd操作 1.django-admin startproject (新建project名称) 2.在pycharm打开project,运行终端输入:python manage.py starta ...

  2. ECShop全系列版本远程代码执行漏洞复现

    前言 问题发生在user.php的display函数,模版变量可控,导致注入,配合注入可达到远程代码执行 漏洞分析 0x01-SQL注入 先看user.php $back_act变量来源于HTTP_R ...

  3. python 3下对stm32串口数据做解析

    1.最近有个想做一个传感器数据实时显示的上位机,常规的数据打印太频繁了,无法直观的看出数据的变化. python下的上位机实现起来简单一点,网上找了一些python界面Tkinter相关资料和pyth ...

  4. go_json解析

    总结: 其他类型转json func Marshal(v interface{}) ([]byte, error)  json 转其他类型 func Unmarshal(data []byte, v ...

  5. (数据科学学习手札48)Scala中的函数式编程

    一.简介 Scala作为一门函数式编程与面向对象完美结合的语言,函数式编程部分也有其独到之处,本文就将针对Scala中关于函数式编程的一些常用基本内容进行介绍: 二.在Scala中定义函数 2.1 定 ...

  6. 20155216 2017-2018-1 《信息安全系统设计基础》第二周课堂练习补交以及Myod的实现

    20155216 2017-2018-1 <信息安全系统设计基础>第二周课堂练习补交 课堂测试3:行断点的设置 运行截图: 未完成原因:课前未安装 cgdb 具体步骤: 1.输入命令:gc ...

  7. rman中 Backup Set 与 Image Copy 优缺点比较

    Backup Set: 一个备份集中可以包含多个数据文件,存储High Water Mark 下的数据块,并且可以采用压缩方式进行,故大小要小于原始数据文件的大小.restore与 recover的开 ...

  8. SRM First Problem && SRM 638 250pts NamingConvention

    NamingConvention 题意: 给一个字符串,删掉所有的'_',然后将‘_'后的第一个字符改成大写. 代码: #include<bits/stdc++.h> using name ...

  9. Cannot get connection for URL jdbc:oracle:thin:调用中无效参数

    这个报错明显是连接数据库的url没有写对,但是,我要说的是但是,同样的代码生产没有问题,而测试环境报错了.最终哥找到那个错误,jdbc连接数据库时,有ResultSet,PreparedStateme ...

  10. VS2008 "无法找到资源编译器dll 请确保路径正确"

    系统环境:windows 8.1 企业版 x64 (装有 .NET 2.0 / 3.5 / 4.0 /  4.5) 安装前确认系统已安装 .NET 2.0 / 3.5 .在安装时,最好是默认安装,并且 ...