第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 ...
随机推荐
- Java基础(十)内部类
1.使用内部类的原因(3点) ①内部类方法可以访问该内部类定义所在的作用域中的数据,包括私有数据. ②内部类可以对同一个包中的其他类隐藏起来. ③当想要定义一个回调函数且不想编写大量代码时,使用匿名内 ...
- Heritrix源码分析(十四)
近段时间在搞定Lucene的一些问题,所以Heritrix源码分析暂时告一段落.今天下午在群里有同学提到了Heritrix异常终止的问题以及让Heritrix不停的抓取(就是抓完一遍后载入种子继续抓取 ...
- HDU 4099 Revenge of Fibonacci (数学+字典数)
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=4099 这个题目就是一个坑或. 题意:给你不超过40的一串数字,问你这串数字是Fibonacci多少的开头 ...
- java语句与流程控制
java程序结构按照结构化程序的思想分为顺序结构,选择结构,和循环结构. ①选择语句 选择结构分为单选择,双选择和多选择.双选择是标准的选择结构,单选择是双选择的简化形式,多选择是双选择的嵌套形式. ...
- DataGrid 简单数据绑定实例1
1.默认数据显示(自动显示列) 后台绑定 //DataGrid 数据绑定 dataGridOne.ItemsSource = _Context.Info.ToList(); 前台定义 <Data ...
- (转)Newtonsoft.Json序列化和反序列
这里下载:http://www.newtonsoft.com/products/json/安装: 1.解压下载文件,得到Newtonsoft.Json.dll 2.在项目中添加引用.. 序列化 ...
- lvm拉伸逻辑卷分区小总结
文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/vg_znl-lv_root ...
- Swift 字符串连接
// 使用+直接相加 var i = var str = "Hello" str = str + " jinpangpang" // 可以使用这种方式连接整值 ...
- Mysql 储存过程以及 python callproc调用
一.存储过程(stored procedure) 存储过程将存入的一系列SQL语句进行预编译,执行并存放在数据库中,之后如果需要使用sql语句对这一组sql进行访问时可以直接提取(很好理解 存储过程就 ...
- 面向对象重写(override)与重载(overload)区别---转载“竹木人”
一.重写(override) override是重写(覆盖)了一个方法,以实现不同的功能.一般是用于子类在继承父类时,重写(重新实现)父类中的方法. 重写(覆盖)的规则: 1.重写方法的参数列表必须完 ...