设置日期DatePickerDialog

设置日期DatePickerDialog

设置日期DatePickerDialog

package com.example.testview;

import java.util.Calendar;
import java.util.Date;
import java.util.Locale; import android.app.Activity;
import android.os.Bundle;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.TextView;
import android.view.View;
import android.view.View.OnClickListener;
import android.app.DatePickerDialog; /**
*
* DatePickerDialog是设置日期对话框,通过OnDateSetListener监听并重新设置日期,
* 当日期被重置后,会执行OnDateSetLintener类中的方法onDateSet()
*
*/ public class DatePickerDialogExample extends Activity { private TextView showdate;
private Button setdate;
private int year;
private int month;
private int day; @Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.datepickerdialog); showdate=(TextView) this.findViewById(R.id.showtime);
setdate=(Button) this.findViewById(R.id.setdate);
//初始化Calendar日历对象
Calendar mycalendar=Calendar.getInstance(); year=mycalendar.get(Calendar.YEAR); //获取Calendar对象中的年
month=mycalendar.get(Calendar.MONTH);//获取Calendar对象中的月
day=mycalendar.get(Calendar.DAY_OF_MONTH);//获取这个月的第几天
showdate.setText("当前日期:"+year+"-"+(month+1)+"-"+day); //显示当前的年月日 //添加单击事件--设置日期
setdate.setOnClickListener(new OnClickListener(){ @Override
public void onClick(View v)
{
/**
* 构造函数原型:
* public DatePickerDialog (Context context, DatePickerDialog.OnDateSetListener callBack,
* int year, int monthOfYear, int dayOfMonth)
* content组件运行Activity,
* DatePickerDialog.OnDateSetListener:选择日期事件
* year:当前组件上显示的年,monthOfYear:当前组件上显示的月,dayOfMonth:当前组件上显示的第几天
*
*/
//创建DatePickerDialog对象
DatePickerDialog dpd=new DatePickerDialog(DatePickerDialogExample.this,Datelistener,year,month,day);
dpd.show();//显示DatePickerDialog组件
}
}); }
private DatePickerDialog.OnDateSetListener Datelistener=new DatePickerDialog.OnDateSetListener()
{
/**params:view:该事件关联的组件
* params:myyear:当前选择的年
* params:monthOfYear:当前选择的月
* params:dayOfMonth:当前选择的日
*/
@Override
public void onDateSet(DatePicker view, int myyear, int monthOfYear,int dayOfMonth) { //修改year、month、day的变量值,以便以后单击按钮时,DatePickerDialog上显示上一次修改后的值
year=myyear;
month=monthOfYear;
day=dayOfMonth;
//更新日期
updateDate(); }
//当DatePickerDialog关闭时,更新日期显示
private void updateDate()
{
//在TextView上显示日期
showdate.setText("当前日期:"+year+"-"+(month+1)+"-"+day);
}
}; }
05-11 18:38