-
1、在页面中定义DatePicker
<DatePicker android:id="@+id/dp_38_02_dateSelect" android:layout_width="match_parent" android:layout_height="match_parent" android:calendarTextColor="#000000" />
-
2、代码中设置监听
首先获得日历类,然后拿到年月日,然后使用DatePicker的init方法,传入年、月、日,最后传入一个OnDateChangedListener监听。
还有需要注意的是OnDateChangedListener监听方法传入的monthOfYear比实际月份小1
/*使用日历类获得年月日,*/
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
final int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);
/*DatePicker的init方法,传入年月日,和一个监听*/
dp_38_02_dateSelect.init(year, month, day, new DatePicker.OnDateChangedListener() {
/*当选择日期改变的时候被调用*/
public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
/*
* view:日期View
* year:年
* monthOfYear:月,需要加1,如果你界面选择4月,那么这里的月份就是3,
* dayOfMonth:日
* */
/*如果是12月,那么数值就是11,所以给它赋值12*/
if (monthOfYear == 11) {
monthOfYear = 12;
} else {
/*只要不是选择12月,就加一*/
monthOfYear += 1;
}
System.out.println(year + "-" + monthOfYear + "-" + dayOfMonth);
}
});
然后尝试选择日期控制台就会打印出来年-月-日