DatePicker对应的监听事件是OnDateChangedListener
TimePicker对应的监听事件是OnTimeChangedListener
xml
<RelativeLayout 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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world" />
<TimePicker
android:id="@+id/timePicker1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true" />
<DatePicker
android:id="@+id/datePicker1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/timePicker1"
android:layout_marginRight="22dp"
android:layout_marginTop="20dp" />
</RelativeLayout>
java代码:
package com.example.android007;
import java.util.Calendar;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.AnalogClock;
import android.widget.DatePicker;
import android.widget.DatePicker.OnDateChangedListener;
import android.widget.TimePicker;
import android.widget.TimePicker.OnTimeChangedListener;
import android.widget.Toast;
public class MainActivity extends Activity {
private TimePicker timepicker;// 声明时间拾取器
private DatePicker datapicker;// 声明日期拾取器
int year;
int month;
int hour;
int day;
int min;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
timepicker = (TimePicker) findViewById(R.id.timePicker1);
datapicker = (DatePicker) findViewById(R.id.datePicker1);
// 获取当前年月日
Calendar ca = Calendar.getInstance();
year = ca.get(Calendar.YEAR);// 获取年
month = ca.get(Calendar.MONTH);// 月
day = ca.get(Calendar.DAY_OF_MONTH);// 天
hour = ca.get(Calendar.HOUR_OF_DAY);// 小时
min = ca.get(Calendar.MINUTE);// 分钟
datapicker.init(year, month, day, new OnDateChangedListener() {
@Override
public void onDateChanged(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
// TODO 自动生成的方法存根
//MainActivity.this.year = year;
MainActivity.this.month = month;
MainActivity.this.day = day;
//获取到的month是0到11,应该加1
String value1 = (month+1) +"月"+ day+"日"+hour+"小时"+min+"分钟";
Toast.makeText(MainActivity.this, value1, 1).show();
}
});
timepicker.setOnTimeChangedListener(new OnTimeChangedListener() {
@Override
public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
// TODO 自动生成的方法存根
String value = hourOfDay + "时" + minute + "分";
Toast.makeText(MainActivity.this, value, 1).show();
}
});
}
}