第32讲 UI组件之 时间日期控件DatePicker和TimePicker
第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的更多相关文章
- 第31讲 UI组件之 Gallery画廊控件
第31讲 UI组件之 Gallery画廊控件 1.Gallery的简介 Gallery(画廊)是一个锁定中心条目并且拥有水平滚动列表的视图,一般用来浏览图片,并且可以响应事件显示信息.Gallery只 ...
- jQuery UI 日期控件--datepicker
在web开发中,日期的输入经常会遇到.我们会用的解决方法有: 1.自己写css和js,对日期进行控制:----有点浪费精力和时间: 2.用easyui插件中的日期插件来实现: 3.用juqery-ui ...
- 时间日期控件的处理-Selenium
很多人问时间日期的空间怎么处理,但是时间日期控件各种各样,你可能遇到正常点的像这样: 当然也可能遇到难点的,像这样: 当然,也不排除会遇到变态的,像这样: 呵呵,真要一个个想着怎么去选择,简直是非人类 ...
- mui 时间日期控件(浏览器上无法查看,在手机端可以点击)
<head> <meta charset="utf-8"> <meta name="viewport" content=" ...
- mvc4中jquery-ui日期控件datepicker的应用
mvc4中jquery-ui日期控件datepicker的应用 本文适合mvc中日期选择需要的同学: 假设读者已经具备了mvc4和javascript中的相关知识 一. 开始项目之前把项目中目录:/C ...
- 日期控件 DatePicker 在ie8不能用
过个年,日期控件DatePicker在ie8下突然不能用了,程序也没升级,很是奇怪. 把ie8的“禁用脚本调试”去掉,再次运行,发现提示有脚本错误. 想着可能是兼容性问题,于是把兼容性视图打开运行,还 ...
- bootstrop 日期控件 datepicker被弹出框dialog覆盖的解决办法
筒子们在使用bootstrap的日期控件(datepicker , 现在官网提供的名称叫 datetimepicker)时可能会遇到如上图的问题这是啥原因造成的呢? 答案很简单时输出的优先级造成的(z ...
- 日期控件datepicker的使用
引入JS: <script type="text/javascript" src="static/my/js/bootstrap-datepicker.min.js ...
- bootstrap datetimepicker时间日期控件
github地址:https://github.com/smalot/bootstrap-datetimepicker Both Date and Time picker widget based o ...
随机推荐
- Jmeter压力测试环境准备
Jmeter性能监控 配置好测试机器上的jmeter环境:http://jmeter-plugins.org/downloads/all/ 网站下载两个东西: JMeterPlugins-Standa ...
- ftp nfs samba比较
首先从字面意思上区分一下:1. FTP(文件传输协议)2. NFS(网络文件系统)3. samba 即smb(服务信息块)协议其中FTP 是TCP/IP协议栈所提供的一种子协议,该子协议具体可以实现在 ...
- DataGrid( 数据表格) 组件[9]
本节课重点了解 EasyUI 中 DataGrid(数据表格)组件的使用方法,这个组件依赖于Panel(面板).Resizeable(调整大小).LinkButton(按钮).Pageination( ...
- include子页面传递过来的参数传递到后台
在页面上可以使用 ${param.moduleId}来获取 在判断中也可以使用${param.moduleId == "test" ? "1":"2& ...
- python 元类与定制元类
1:元类 元类:类的创建与管理者 所有类的元类是type class a: pass print(type(a)) 结果:<class 'type'> 2:定制元类 类的实例化过程:(可看 ...
- js 日期控件 可以显示为和历
日期控件的js <!-- /** * Calendar * @param beginYear 1990 * @param endYear 2010 * @param language 0(zh_ ...
- Flex布局摆脱float带来的布局问题
完整文章地址http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html?utm_source=tuicool 使用浮动(float)的一个比较疑惑 ...
- noip2015运输计划
二分+LCA+查分前缀和 #include<iostream> #include<cstring> #include<cstdio> #include<alg ...
- 前端开发攻城师绝对不可忽视的五个HTML5新特性
HTML5已经火了一段时间了,相信作为web相关开发工程师,肯定或多或少的了解和尝试过一些HTML5的特性和编程.还记得以前我们介绍过的HTML5新标签. 作为未来前端开发技术的潮流和风向标,HTML ...
- win7下的iis配置
1.配置错误 说明:在处理向该请求提供服务所需的配置文件时出错.请检查下面的特定错误详细信息并适当地修改配置文件. 分析器错误消息:无法识别的属性“targetFramework”.请注意属性名称区分 ...