第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. 使用nvm来管理nodejs版本

    nvm 是 Mac 下的 node 管理工具,有点类似管理 Ruby 的 rvm,如果是需要管理 Windows 下的 node,官方推荐是使用 nvmw 或 nvm-windows .nvm主要用来 ...

  2. DevExpress之时间控件

    dateEdit和timeEdit 基本属性 DisplayFormat.FormatString-------失去焦点是控件显示的格式,timeEdit用不上 EditMask----------- ...

  3. 如何用SVN进行个人版本管理

    事实上SVN的确是我用过的最好的源码管理工具,虽然我用过的这类工具并不多,只有VSS.CVS和SVN,其它像PVCS. TeamSource.ClearCase之类的只有耳闻,因为它们都是商业产品,并 ...

  4. Python-字符串开头或结尾匹配

    startswith() 和 endswith() 方法提供了一个非常方便的方式去做字符串开头和结尾的检查. 1.查看指定目录下的所有文件名 >>> import os >&g ...

  5. Python序列的方法(转)

    在快速教程中,我们了解了最基本的序列(sequence).回忆一下,序列包含有定值表(tuple)和表(list).此外,字符串(string)是一种特殊的定值表.表的元素可以更改,定值表一旦建立,其 ...

  6. centos7编译安装MySQL5.7.9

    title: centos7编译安装MySQL5.7.9 date: 2016-05-12 16:20:17 tags: --- Centos7编译安装mysql5.7.9 mysql5.7有更好的性 ...

  7. OC基础 NSDate

    OC基础  NSDate #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @auto ...

  8. iOS字体 UIFont 字体名字大全

    打印所有的字体 NSArray *familyNames = [UIFont familyNames];//所有的家族名称 for(NSString *familyName in familyName ...

  9. 学习在创建好的工程里面添加CoreData

    在学习CoreData中, 在建工程后, 没有添加, 于是就参考网络文章进行更改. 这几天在学习做一个ios的小项目,项目中需要对数据进行基本的增删改查操作.于是就想用一把CoreData.但在创建项 ...

  10. spring 学习 AOP和IOC

    自11开始接触三大框架,至今已俞5载, 当时风光无限的ssh,现在还在被广泛使用,并有扩大之势的只有spring了 spring主要特性,是广为使用的AOP(面向切面)和IOC(控制反转) 1.其中, ...