【Android自学日记】使用DatePicker以及TimePicker显示当前日期和时间
DatePicker
1.获取一个日历对象:
Calendar cal=Calendar.getInstance();
2.获取当前日期及时间:
int year=cal.get(Calendar.YEAR);
int month=cal.get(Calendar.MONTH)+1;//特殊的是Calendar中月份从0开始计数,所以加1得到常规月份
int day=cal.get(Calendar.DAY_OF_MONTH);
int hour=cal.get(Calendar.HOUR_OF_DAY);
int minute=cal.get(Calendar.MINUTE_OF_HOUR);
setTitle(year+"-"+month+"-"+day+"-"+hour+":"+minute);
3.初始化datePicker
datePicker.init(year,month,day,new OnDateChangedListener()){
@Override
//监听用到的方法
public void onDateChanged(DatePicker view,int year,int cal.get(Calendar.MONTH_OF_YEAR),int dayOfMonth){
//使标题上的日期能随着选择的改变而改变
setTitle(year+"-"+(monthOfYear+1)+"-"+dayOfMonth);
}
}
使用java的工具类,获取当前的年月日时分
月份是从0开始,所以获取的时候要+1
日:使用day_of_month方法是获取当前月的那天
时:使用hour_of_day方法是获取当天的几时
DatePickerDialog 以对话框的形式选择日期
代码:
new DataPickerDialog(this,new OnDateSetListener(){
@Override
public void onDateSet(DatePicker view,int year,int monthOfYear,int dayOfMonth){
setTitle(year+":"+(monthOfYear+1)+"-"+dayOfMonth);
}
},year,cal.get(Calendar.MONTH),day).show();
其中参数year,get(Calendar).MONTH,day相当于init方法中的初始化。
千万别忘记写.show()方法,否则不会显示在页面上。
TimePicker
TimePicker timePicker=(TimePicker)findViewById(R.id.timePicker1);
//时间选择器不需要手动初始化,默认初始化为当前的时间
timePicker.setOnTimeChangedListener(new OnTimeChangedListener()){
@Override
public void onTimeChanged(TimePicker view,int hourOfDay,int minute){
setTitle(hourOfDay+"-"+minute);
}
}
DatePicker日期选择器,需要在初始化的时候(init)设置监听OnDateChangeListener并实现监听方法,TimePicker时间选择器不需要初始化只需要设置监听OnTimeChangedListener方法即可
TimePickerDailog
代码:
new TimePickerDialog(context,callBack,hourOfDay,minute,is24HourView()).show();
其中参数hourOfDay,minute需要自己定义,也就是说TimePickerDialog不会自行初始化时间,参数is24HourView为Boolean类型
sdk方法中的时间参数只有month,day会是这种形式monthOfYear,dayOfMonth,因为月数,日数依赖于后者
总结:
TimePickerDialog和TimePicker不同的是,它不用在布局文件中声明,直接通过类就可以new出来。在Android中这种弹出式的UI一般都不用在布局文件中声明,直接用类就可以搞定,一般要显示他们都要显示地调用show()方法,比如Toast这个类也是一样。

【Android自学日记】使用DatePicker以及TimePicker显示当前日期和时间的更多相关文章
- Android 使用DatePicker以及TimePicker显示当前日期和时间
课程内容1.介绍DatePicker和TimePicker两种实现动态输入日期和事件的功能2.介绍DatePickerDialog和TimePickerDialog来年耕种实现动态输入日期和事件的对话 ...
- Android 自学之日期DatePicker、时间TimePicker选择器
日期(DatePicker).时间(TimePicker)是两个比较易用的控件,他们都是从帧布局FrameLayout派生而出的:他们在FrameLayout的基础上提供了一些方法来获取当前用户所选择 ...
- Android多种方法显示当前日期和时间
文章选自StackOverflow(简称:SOF)精选问答汇总系列文章之一,本系列文章将为读者分享国外最优质的精彩问与答,供读者学习和了解国外最新技术.本文探讨Android显示当前日期和时间的方法. ...
- WdatePicker文本框显示当前日期和时间限制<My97DatePicker两个日期范围不超过30天,第一个小于第二个,都不大于当前日期 >
My97DatePicker是很不错的一个日期选择插件,体积只有几十k但是功能非常强大.官网:http://www.my97.net/ 能满足很多苛刻的要求. WdatePicker文本框显示当前日期 ...
- 【Android自学日记】【转】Android Fragment 真正的完全解析(下)
上篇博客中已经介绍了Fragment产生原因,以及一些基本的用法和各种API,如果你还不了解,请看:Android Fragment 真正的完全解析(上). 本篇将介绍上篇博客提到的:如何管理Frag ...
- 【Android自学日记】【转】Android Fragment 真正的完全解析(上)
自从Fragment出现,曾经有段时间,感觉大家谈什么都能跟Fragment谈上关系,做什么都要问下Fragment能实现不~~~哈哈,是不是有点过~~~ 本篇博客力求为大家说明Fragment如何产 ...
- 【Android自学日记】两种适配器的使用
ArrayAdapter适配器: (1)用于显示基本的文字内容 (2)基本使用过程:新建适配器---创建或加载数据源---适配器加载数据源---视图加载适配器 ArrayAdapter(上下文,当前L ...
- 【Android自学日记】五大布局常用属性
线性布局(LinearLayout)常用属性: android:orientation="vertical"--决定子类控件的排布方式(vertical垂直:horizontal水 ...
- 【Android自学日记】搭建Android开发环境
搭建Android应用开发环境所需工具 1_> JDK(JAVA Development)推荐使用6.0以后版本 配置环境变量(以下是环境变量的具体内容及介绍) ================ ...
随机推荐
- js 批量设置css样式
在js中更换样式比较常见,但是批量设置比较少遇见: 但是在做就是插件时,不想额外的添加css文件(需要导入,还可能引起冲突),能批量设置就比较方便了. 以下代码是来自网上的三种方法,使用第二种最方便了 ...
- [笔记]ng2的webpack配置
欢迎吐槽 前言 angular.cn教程中用的是systemjs加载器,那用webpack应该怎么配置呢?本文 demo: https://github.com/LeventZheng/angular ...
- [LeetCode] Shortest Palindrome 最短回文串
Given a string S, you are allowed to convert it to a palindrome by adding characters in front of it. ...
- 单核 -512M内存-2000并发正常使用
自从自己创业以后就很少写博客了,也许是太忙了.也许是无法静下心好好研究一个东西.今天把我们做的后台做了下压力测试.结果还可以,尤其是对于我这种从java转过来土人. 4年前看到一篇抨击java的文章 ...
- LISA介绍及其使用方法
LISA是ARM公司开发的一款开源工具.在内核开发过程中,苦于无法针对修改内容进行一些量化或者可视化结果的测量,而无感.LISA对于模型调优,回归测试都有较强的支持. 什么是LISA? LISA是Li ...
- jquery中attr和prop的区别
在高版本的jquery引入prop方法后,什么时候该用prop?什么时候用attr?它们两个之间有什么区别?这些问题就出现了. 关于它们两个的区别,网上的答案很多.这里谈谈我的心得,我的心得很简单: ...
- 八月22日,django知识点总结:
八月22日,知识点总结: python manage.py makemigrations python manage.py migrate unique=true是指这个字段的值在这张表里不能重复,所 ...
- ubuntu下面更改用户名的方法
在装HADOOP 系统时候不小心, 没有将三台机器的用户名设置为一致的用户名,导致后面发生很多麻烦.下面总结一下UBUNTU中改用户名的方法. 1. 先给系统添加一个super用户,我们用这个用户名 ...
- Elasticsearch索引自动套用模板
公司ELK系统目前的设置是每月自动将日志信息记录至新的索引中,将日志数据按月分索引保存,在扩展的ELK架构中,利Logstash对接rabbitmq,获取日志消息,自动持久化至Elasticsearc ...
- 在windows上部署使用Redis
参考地址: http://keenwon.com/1275.html