第32讲 UI组件之 时间日期控件DatePicker和TimePicker

在Android中,时间日期控件相对来说还是比较丰富的。其中,

DatePicker用来实现日期输入设置,    TimePicker用来实现时间输入设置。

DatePickerDialog用来显示日期对话框,TimePickerDialog用来显示时间对话框。

AnalogClock用来显示一个指针式时钟,DigitalClock用来显示一个数字式时钟。

、DatePicker

在Android中,DatePicker用来实现日期输入设置,日期的设置范围为1900年1月1日至2100年12月31日。

常用xml属性

属性名称

说明

android:calendarViewShown[boolean]

用于设置是否显示日历视图(calendar view);

android:endYear[int]

用于设置截至日期;

android:maxDate[int]

用于设置最大的日期;

android:minDate[int]

用于设置最小的日期;

android:spinnersShown[boolean]

用于设置是否显示spinners;

android:startYear[int]

用于设置起始日期;

DatePicker的常用方法有以下一些:

方法名称

说明

getDayOfMonth()

获取当前日期的日,返回int

getMonth()

获取当前日期的月,返回int

getYear()

获取当前日期的年,返回int

setEnabked(boolean enabled)

根据传入的参数设置日期选择控件是否可用

updateDate(int year,int month,int dayOfMonth)

更新当前日期

init(int year,int monthOfYear,int dayOfMonth,

DatePicker.OnDateChangedListener onDateChangedListener);

初始化日期,参数onDateChangedListener为监听器对象

新建一个DataPicker对象,添加

android:calendarViewShown="false"   //关闭日历显示

通过DatePicker获取时间方法如下:

DatePicker datePicker=(DatePicker) findViewById(R.id.datePicker1);

//获得当前日期对象

Calendar calendar=Calendar.getInstance();

// 初始化DatePicker

datePicker.init(calendar.get(Calendar.YEAR),calendar.get(Calendar.MONTH),calendar.get(Calendar.DAY_OF_MONTH), new OnDateChangedListener() {

// 为DatePicker指定事件监听器

public void onDateChanged(DatePicker arg0, int year, int month, intday) {

Toast.makeText(MainActivity.this,"The date you pickis:"+year+"."+(month+1)+"."+day+".",0).show();

}

});

、TimePicker

在Android中,TimePicker用来实现时间输入设置,可以选择12或24小时模式。TimePicker的常用方法有以下一些:

方法名称

说明

getCurrentHour()

获取当前时间的小时,返回Integer对象

getCurrentMinute()

获取当前时间的分钟,返回Integer对象;

is24HourView()

获取是否为24小时模式,返回boolean对象;

setCurrentHour(Integer currentHour)

设置当前时间的小时;

setCurrentMinute(Integer currentMinute)

设置当前时间的分钟;

setIs24HourView(Boolean is24HourView)

设置24小时模式,默认为false;

新建一个DataPicker对象

TimePicker timePicker=(TimePicker)findViewById(R.id.timePicker1);

timePicker.setIs24HourView(true);                            //24小时制

timePicker.setOnTimeChangedListener(newOnTimeChangedListener() {

public voidonTimeChanged(TimePicker arg0, int hour, int minute) {

Toast.makeText(MainActivity.this, "The time you pickis:"+hour+":"+minute, 0).show();

}

});

、弹出式Picker:DatePickerDialog TimePickerDialog

时间日期控件占用视图当中大片的面积,开发中我们经常使用对应的对话框组件。

举例,采用弹出框形式设置Date和Time

在Android中,DatePickerDialog用来显示日期对话框。DatePickerDialog的常用方法有以下一些:

方法名称

说明

getDatePicker()

获取DatePicker中的日期值,返回DatePicker对象

onClick(DialogInterface dialog,int which)

响应对话框中的点击事件;

is24HourView()

获取是否为24小时模式,返回boolean对象;

onDateChanged(DatePicker view,int year,int month,int day)

响应日期改变事件;

updateDate(int year,int monthOfYear,int dayOfMonth)

更新当前日期;

在Android中,TimePickerDialog用来显示时间对话框。TimePickerDialog的常用方法有以下一些:

方法名称

说明

onClick(DialogInterface dialog,int which)

响应对话框中的点击事件

is24HourView()

获取是否为24小时模式,返回boolean对象;

onTimeChanged(TimePicker view,int hourOfDay,int minute)

响应时间改变事件;

updateTime(int hourOfDay,int minuteOfHour)

更新当前时间;

1、弹出Date选择框

public void showdate(View view) {

Calendar calendar=Calendar.getInstance();

newDatePickerDialog(this, new OnDateSetListener() {

public void onDateSet(DatePicker view, int year, int month, int day){

Toast.makeText(MainActivity.this, "Thedate you pick is:"+year+"."+(month+1)+"."+day+".",0).show();

}

};

calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH),

calendar.get(Calendar.DAY_OF_MONTH)).show();

}

2、弹出Time选择框

public void showtime(View view) {

new TimePickerDialog(this, new OnTimeSetListener() {

public void onTimeSet(TimePicker view, int hour, int minute) {

Toast.makeText(MainActivity.this, "The time you pickis:"+hour+":"+minute, 0).show();

}

}, 12, 12, true).show();

}

第32讲 UI组件之 时间日期控件DatePicker和TimePicker的更多相关文章

  1. 第31讲 UI组件之 Gallery画廊控件

    第31讲 UI组件之 Gallery画廊控件 1.Gallery的简介 Gallery(画廊)是一个锁定中心条目并且拥有水平滚动列表的视图,一般用来浏览图片,并且可以响应事件显示信息.Gallery只 ...

  2. jQuery UI 日期控件--datepicker

    在web开发中,日期的输入经常会遇到.我们会用的解决方法有: 1.自己写css和js,对日期进行控制:----有点浪费精力和时间: 2.用easyui插件中的日期插件来实现: 3.用juqery-ui ...

  3. 时间日期控件的处理-Selenium

    很多人问时间日期的空间怎么处理,但是时间日期控件各种各样,你可能遇到正常点的像这样: 当然也可能遇到难点的,像这样: 当然,也不排除会遇到变态的,像这样: 呵呵,真要一个个想着怎么去选择,简直是非人类 ...

  4. mui 时间日期控件(浏览器上无法查看,在手机端可以点击)

    <head> <meta charset="utf-8"> <meta name="viewport" content=" ...

  5. mvc4中jquery-ui日期控件datepicker的应用

    mvc4中jquery-ui日期控件datepicker的应用 本文适合mvc中日期选择需要的同学: 假设读者已经具备了mvc4和javascript中的相关知识 一. 开始项目之前把项目中目录:/C ...

  6. 日期控件 DatePicker 在ie8不能用

    过个年,日期控件DatePicker在ie8下突然不能用了,程序也没升级,很是奇怪. 把ie8的“禁用脚本调试”去掉,再次运行,发现提示有脚本错误. 想着可能是兼容性问题,于是把兼容性视图打开运行,还 ...

  7. bootstrop 日期控件 datepicker被弹出框dialog覆盖的解决办法

    筒子们在使用bootstrap的日期控件(datepicker , 现在官网提供的名称叫 datetimepicker)时可能会遇到如上图的问题这是啥原因造成的呢? 答案很简单时输出的优先级造成的(z ...

  8. 日期控件datepicker的使用

    引入JS: <script type="text/javascript" src="static/my/js/bootstrap-datepicker.min.js ...

  9. bootstrap datetimepicker时间日期控件

    github地址:https://github.com/smalot/bootstrap-datetimepicker Both Date and Time picker widget based o ...

随机推荐

  1. 如何避免被C++默认拷贝构造函数忽悠?

    一.背景介绍           因为工作关系,需要用到C++编程.对于我来说,虽然一直从事的是linux平台下的嵌入式软件开发,但深入用到C++的特性的地方并不多.对于C++,用得最多的无非是指针. ...

  2. [转]Android访问网络,使用HttpURLConnection还是HttpClient

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/12452307 最近在研究Volley框架的源码,发现它在HTTP请求的使用上比较有 ...

  3. Myself

    每次过来写博客,一定是遇到什么问题,并且自己还解决不来. 并不是单纯的安静下来书写心得体会-->讨厌之余都有点看不起自己. 闲话少说,回归正题. C语言之于我可是骄傲与挫败并存. 当我做程式遇到 ...

  4. mysql数据库的高可用方法总结

    高可用架构对于互联网服务基本是标配,无论是应用服务还是数据库服务都需要做到高可用.虽然互联网服务号称7*24小时不间断服务,但多多少少有一 些时候服务不可用,比如某些时候网页打不开,百度不能搜索或者无 ...

  5. 内容提供者 ContentResolver 数据库 示例 -1

    MainActivity public class MainActivity extends ListActivity {     private TextView tv_info;     priv ...

  6. django: db - display

    本讲介绍数据在页面中的呈现,内容很简单,就是嵌套循环在模板中的使用. 一,修改 csvt03/urls.py: from django.conf.urls import patterns, inclu ...

  7. Linux 系统库函数coreleft 与sbrk简介

    coreleft   函数名: coreleft 功 能: 返回未使用内存的大小 用 法: unsigned coreleft(void); 程序例: #include <stdio.h> ...

  8. ArcGIS Server 9.3 安装(win7).

    概述: 安装的过程还不算复杂,但是有个地方需要注意:就是防火墙.需要将 "本机的防火墙" 关掉, 并将 "杀毒软件关闭"(360和avira都会乱来,搞得我安了 ...

  9. c++中vector等容器的实现机制

    stl容器区别: vector list deque set map-底层实现 stl容器区别: vector list deque set map (转) 在STL中基本容器有: vector.li ...

  10. Spring 学习笔记01

    以一个论坛登陆模块来讲解如何使用spring 登陆功能虽然简单,但是模块虽然很小,但是基本包括了一般的web应用的操作.涵盖了持久层数据访问(数据库相关操作).业务层事务管理(数据库操作回滚等).展现 ...