日期、时间选择器(DatePicker和TimePicker)的功能和用法

DatePicker和TimePicker是两个比较常用的控件,它们都从FrameLayout派生而来,其中DatePicker用于选择日期、TimePicker用于选择时间。

DatePicker和TimePicker在FrameLayout的基础上提供了一些方法来获取当前用户所选择的日期、时间;开发者可以通过为DatePicker添加OnDateChangedListener、为TimePicker添加OnTimeChangedListener监听器进行监听来获取用户选择的日期和时间。

DatePicker(日期选择器)


结构:

<pre name="code" class="html">java.lang.Object↳     android.view.View↳  android.view.ViewGroup↳     android.widget.FrameLayout↳     android.widget.DatePicker

概述:

一个选择年月日的日历布局视图,对于对话框视图,参见 DatePickerDialog.

公共方法:

Public Methods

int

getDayOfMonth()

获取选择的天数

int

getMonth()

获取选择的月份

int

getYear()

获取选择的年份

void

init(int year, int monthOfYear, int dayOfMonth, DatePicker.OnDateChangedListener onDateChangedListener)

初始化年月日

void

setEnabled(boolean enabled)

设置视图的启用状态

void

updateDate(int year, int monthOfYear, int dayOfMonth)

更新日期

DatePicker支持的XML属性:

XML属性

说明

android:calendarViewShown

设置该日期选择器是否显示ClendarView组件

android:endYear

设置该日期选择器允许选择的最后一年

android:startYear

设置该日期选择器允许选择的第一一年

android:maxDate

设置该日期选择器允许选择的最大日期。以mm/dd/yyyy格式指定最大日期

android:minDate

设置该日期选择器允许选择的最小日期。以mm/dd/yyyy格式指定最小日期

android:spinnersShown

设置该日期选择器是否显示Spinner日期选择组件

TimePicker(时间选择器)


结构:

<pre name="code" class="html">ava.lang.Object↳  android.view.View↳  android.view.ViewGroup↳     android.widget.FrameLayout↳     android.widget.TimePicker

概述:

用于选择一天中时间的视图,支持 24小时及上午/下午模式。小时,分钟及上午/下午(如果可用)都可以用垂直滚动条来控制。用键盘来输入小时。两个数的小时数可以通过输入两个数字来实现,例如在一定时间内输入‘1’和‘2’即选择了12点。分钟能显示输入的单个数字。在AM/PM模式下,用户可以输入'a', 'A"或 'p', 'P'来选取。对于对话框视图,参见TimePickerDialog。

公共方法:

Public Methods

int

getBaseline()

返回窗口空间的文本基准线到其顶边界的偏移量。如果这个部件不支持基准线对齐,

这个方法返回-1/。

Integer

getCurrentHour()

获取当前时间的小时部分。 返回值当前小时(0-23)

Integer

getCurrentMinute()

获取当前时间的分钟部分

boolean

is24HourView()

获取当前系统设置是否是24小时制。 如果是24小时制返回true,否则返回false。

void

setCurrentHour(Integer currentHour)

设置当前小时

void

setCurrentMinute(Integer currentMinute)

设置当前分钟(0-59)

void

setEnabled(boolean enabled)

设置可用的视图状态。可用的视图状态的解释在子类中改变。

void

setIs24HourView(Boolean is24HourView)

设置是24小时还是上午/下午制

void

setOnTimeChangedListener(TimePicker.OnTimeChangedListener onTimeChangedListener)

设置时间调整事件的回调函数。

应用实例


选择日期和时间:

运行效果图:

程序代码:

package com.jph.choosedae;import java.util.Calendar;
import android.app.Activity;
import android.os.Bundle;
import android.widget.DatePicker;
import android.widget.DatePicker.OnDateChangedListener;
import android.widget.EditText;
import android.widget.TimePicker;
import android.widget.TimePicker.OnTimeChangedListener;
import android.widget.Toast;/*** Description:* <br/>选择日期时间* <br/>本实例通过DatePicker(时间选择器)和* <br/>TimePicker(日期选择器)来提供用户选择日期和时间* <br/>为了获取选择的日期程序为DatePicker注册了OnDateChangedListener* <br/>监听器,为了获取选择的时间程序为TimePicker注册OnTimeChangedListener* <br/>监听器* @author jph* Date:2014.20.57*/
public class ChooseDate extends Activity
{// 定义5个记录当前时间的变量private int year;private int month;private int day;private int hour;private int minute;@Overridepublic void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.main);DatePicker datePicker = (DatePicker)findViewById(R.id.datePicker);TimePicker timePicker = (TimePicker) findViewById(R.id.timePicker);// 获取当前的年、月、日、小时、分钟Calendar c = Calendar.getInstance();year = c.get(Calendar.YEAR);month = c.get(Calendar.MONTH);day = c.get(Calendar.DAY_OF_MONTH);hour = c.get(Calendar.HOUR);minute = c.get(Calendar.MINUTE);// 初始化DatePicker组件,初始化时指定监听器datePicker.init(year, month, day, new OnDateChangedListener(){@Overridepublic void onDateChanged(DatePicker arg0, int year, int month, int day){ChooseDate.this.year = year;ChooseDate.this.month = month;ChooseDate.this.day = day;// 显示当前日期、时间showDate(year, month, day, hour, minute);Toast.makeText(ChooseDate.this,"您选择的日期:"+year+"年  "+month+"月  "+day+"日", Toast.LENGTH_SHORT).show();}});// 为TimePicker指定监听器timePicker.setOnTimeChangedListener(new OnTimeChangedListener(){@Overridepublic void onTimeChanged(TimePicker view, int hourOfDay, int minute){ChooseDate.this.hour = hourOfDay;ChooseDate.this.minute = minute;// 显示当前日期、时间showDate(year, month, day, hour, minute);Toast.makeText(ChooseDate.this,"您选择的时间:"+hourOfDay+"时  "+minute+"分", Toast.LENGTH_SHORT).show();
//              }});}// 定义在EditText中显示当前日期、时间的方法private void showDate(int year, int month, int day, int hour, int minute){EditText show = (EditText) findViewById(R.id.show);show.setText("您选择的日期和时间为:" + year + "年" + (month + 1) + "月" + day + "日  "+ hour + "时" + minute + "分");}
}

xml布局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="fill_parent"><!-- 显示用户输入日期、时间的控件 -->
<EditText android:id="@+id/show"android:layout_width="fill_parent" android:layout_height="wrap_content"android:editable="false"android:cursorVisible="false"/>
<TextView  android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="请选择日期和时间"/>
<!-- 定义一个DatePicker组件 -->
<DatePicker android:id="@+id/datePicker"android:layout_width="wrap_content" android:layout_height="200dp"android:layout_gravity="center_horizontal"android:startYear="2000"android:endYear="2050"android:calendarViewShown="true"android:spinnersShown="true"/>
<!-- 定义一个TimePicker组件 -->
<TimePicker android:id="@+id/timePicker"android:layout_width="wrap_content" android:layout_height="100dp"android:layout_gravity="center_horizontal"/>
</LinearLayout>

Android开发之日期、时间选择器(DatePicker和TimePicker)的功能和用法相关推荐

  1. Android中实现日期时间选择器(DatePicker和TimePicker)

    利用Android应用框架提供的DatePicker(日期选择器)和TimePicker(时间选择器),实现日期时间选择器. Dialog的Content布局文件(date_time_dialog.x ...

  2. android edittext获取 time值,在Android EditText中实现日期时间选择器(DatePicker和TimePicker)...

    利用Android应用框架提供的DatePicker(日期选择器)和TimePicker(时间选择器),实现日期时间选择器. Dialog的Content布局文件(date_time_dialog.x ...

  3. Android开发之日期时间控件选择

    Android开发之日期时间控件选择 文章目录 前言 一.创建弹出Layout 1.1 新建Layout,修改样式为LinearLayout 1.2 Layout中添加日期和时间控件 二.新建Date ...

  4. 日期时间选择器 DatePicker

    日期时间选择器 DatePicker 一款高颜值.多场景的日期时间选择器,提供自定义颜色/格式/文案等. 该插件采用scss编译,如遇到样式/层级问题可以到源码修改. 如果对您有帮助,可以评论或赞赏一 ...

  5. android仿iphone日期时间选择器,Android仿iPhone日期时间选择器详解

    本文实例为大家分享了Android仿iPhone时间选择器的具体代码,供大家参考,具体内容如下 先看效果图 如何使用 import java.text.DateFormat; import java. ...

  6. android日期选择区间控件_Android日期时间选择器实现以及自定义大小

    本文主要讲两个内容:1.如何将DatePicker和TimePicker放在一个dialog里面:2.改变他们的宽度: 问题1:其实现思路就是自定义一个Dialog,然后往里面同时放入DatePick ...

  7. 选择对话框 android_Android日期时间选择器对话框

    选择对话框 android Android Date Time picker are used a lot in android apps. In this tutorial we'll demons ...

  8. DateTimePicker 日期时间选择器报错 Cannot read property ‘getHours‘ of undefined, 无法选中`[__ob_: observer__]`时做判断

    我在一次开发中遇到了这个情况:使用DateTimePicker 日期时间选择器,出现无法选中, 报错 Cannot read property 'getHours' of undefined, 这个原 ...

  9. vue 日期时间选择器_Vue日期时间选择器

    vue 日期时间选择器 Vue日期时间选择器 (Vue Datetime picker) Vue Datetime picker BY Vladyslav Shchepotin. Vue日期时间选择器 ...

  10. 关于Element UI中日期时间选择器在IE浏览器中初始化显示的兼容性问题

    一.简单说明 项目使用Vue+Element UI进行开发,使用了 DateTimePicker 日期时间选择器. 二.问题描述 打开修改对话框(进行选择日期操作可以正常显示),在谷歌浏览器中初始化时 ...

最新文章

  1. C/C++面试题分享
  2. c语言输入函数有什么作用,c语言的输入函数有哪些
  3. 为什么要假设变量为正态分布?
  4. 系统制成docker镜像_Docker学习以及镜像制作流程
  5. 操作系统(二)操作系统的四个特征
  6. matlab充分利用性能,Matlab高性能编程——代码优化和并行计算
  7. camel route 创建顺序
  8. 华为c语言编程规范_C语言编程规范
  9. 双十一清醒指南,送3本Python书
  10. 实验三:从整理上理解进程创建、可执行文件的加载和进程执行进程切换,重点理解分析fork、execve和进程切换...
  11. Linux 重启oracle数据库
  12. FlashFXP连接虚拟机ubuntu 16.04
  13. 智能机器人建房子后房价走势_机器人建楼、5G住宅……房地产下半场要这样玩...
  14. html表单有几部分组成,网页制作时表单由哪两部分组成
  15. mysql workbench 备份数据库
  16. ASP.NET压力测试
  17. VScode插件管理(C/C++)
  18. 将两张图片合并成一张图片
  19. 【中级计量经济学】Lecture 2 多重共线性
  20. HTML(hiden控件 readonly disabled)(maxlength属性)(id属性重点)

热门文章

  1. Windows 强制删除文件及文件夹命令
  2. VS2005与紫光拼音输入法全角问题的解决办法
  3. ADM2587E外围电路设计
  4. mysql用户角色权限表设计_用户角色权限设计(转)
  5. AutoCAD二次开发基础(一):基础使用
  6. HTML+CSS+JavaScript七夕情人节表白网页【樱花雨3D相册】超好看
  7. gg修改器免root下载
  8. 数据可视化实战案例分享
  9. SEO的日常主要工作做哪些
  10. 软件测试工程师简历项目经验怎么写?1000套简历模板告诉你答案