您的位置:首页 > 其它

使用DatePicker实现日历选择器及使用TimePicker实现时间选择器

2016-03-20 16:24 477 查看
【1】创建工程DateTimePicker,结构如图:



【2】在布局文件中分别增加DatePicker与TimePicker控件,如下:

<linearlayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity">

<datepicker android:id="@+id/datePicker" android:layout_width="wrap_content" android:layout_height="wrap_content">

<timepicker android:id="@+id/timePicker" android:layout_width="wrap_content" android:layout_height="wrap_content">

</timepicker></datepicker></linearlayout>


【3】在Activity中实现逻辑

package com.beijing.datetimepicker;

import java.util.Calendar;

import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.DatePickerDialog.OnDateSetListener;
import android.app.TimePickerDialog;
import android.app.TimePickerDialog.OnTimeSetListener;
import android.os.Bundle;
import android.widget.DatePicker;
import android.widget.DatePicker.OnDateChangedListener;
import android.widget.TimePicker;
import android.widget.TimePicker.OnTimeChangedListener;

public class MainActivity extends Activity {
private DatePicker datePicker;
private TimePicker timePicker;
private Calendar cal;
private int year;
private int month;
private int day;
private int hour;
private int minute;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获取一个日历的实例
cal=Calendar.getInstance();
//获取年月日时分秒的信息
year=cal.get(Calendar.YEAR);
month=cal.get(Calendar.MONTH)+1;
day=cal.get(Calendar.DAY_OF_MONTH);
hour=cal.get(Calendar.HOUR_OF_DAY);
minute=cal.get(Calendar.MINUTE);
setTitle(year+"-"+month+"-"+day+"-"+hour+":"+minute);
datePicker=(DatePicker) findViewById(R.id.datePicker);
timePicker=(TimePicker) findViewById(R.id.timePicker);

//datePicker初始化
datePicker.init(year, cal.get(Calendar.MONTH), day, new OnDateChangedListener() {

@Override
public void onDateChanged(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
setTitle(year+"-"+(monthOfYear+1)+"-"+dayOfMonth);
}
});

timePicker.setOnTimeChangedListener(new OnTimeChangedListener() {

@Override
public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
setTitle(hourOfDay+":"+minute);
}
});

new DatePickerDialog(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();

new TimePickerDialog(this, new OnTimeSetListener() {

@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
setTitle(hourOfDay+":"+minute);
}
}, hour, minute, true).show();
}

}


>
了解详情请点击链接http://download.csdn.net/detail/programmerteny/9467246下载源码。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  DatePicker TimePicker