Android开发之日期、时间选择器(DatePicker和TimePicker)的功能和用法
来源:互联网 发布:杨幂网络暴力事例 编辑:程序博客网 时间:2024/04/30 07:27
日期、时间选择器(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)的功能和用法
- 日期和时间选择器(DatePicker与TimePicker的用法)
- Andorid日期,时间选择器(DatePicker和TimePicker)的功能和用法
- TimePicker时间选择器和DatePicker日期选择器
- 时间和日期选择器DatePicker和TimePicker的使用
- Android中实现日期时间选择器(DatePicker和TimePicker)
- Android中实现日期时间选择器(DatePicker和TimePicker)
- Android中实现日期时间选择器(DatePicker和TimePicker)
- Android中实现日期时间选择器(DatePicker和TimePicker)
- Android中实现日期时间选择器(DatePicker和TimePicker)
- Android中实现日期时间选择器(DatePicker和TimePicker)
- android基本 UI(四)—时间选择器TimePicker和日期选择器 DatePicker
- Android--DatePicker和TimePicker(日历选择器与时间选择器)
- Android开发——DatePicker和TimePicker时间选择器
- 时间选择器:DatePicker 和TimePicker
- 时间选择器DatePicker和TimePicker
- android 控件 日期和时间(DatePicker,TimePicker)
- Android之日期时间选择控件DatePicker和TimePicker
- POJ - 1135 Domino Effect (最短路 Dijkstra)
- IE6的3像素BUG
- zoj 3299 概率dp
- Web MVC简介
- POJ 1724 ROADS (搜索+剪枝)
- Android开发之日期、时间选择器(DatePicker和TimePicker)的功能和用法
- Pat(Advanced Level)Practice--1082(Read Number in Chinese)
- linux 进程前后台调度
- 集合(Map扩展)
- poj 1548
- HDU Today(prim——最小生成树)
- 集合(Collections-sort)-(Collections-max)-(Collections-binarySearch)
- JavaScript中的数组
- 路由器拆卸初体验