import java.util.Calendar; import java.util.TimeZone; import android.app.Activity; import android.app.DatePickerDialog; import android.app.DatePickerDialog.OnDateSetListener; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.DatePicker; import android.widget.RelativeLayout; import android.widget.TextView; public class DatePickerDialogTest extends Activity { private RelativeLayout mainView=null; private TextView tv=null; private Button button=null; private DatePickerDialog dpd=null; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mainView=new RelativeLayout(this); tv=new TextView(this); RelativeLayout.LayoutParams lp_tv=new RelativeLayout.LayoutParams(-2,-2); lp_tv.addRule(RelativeLayout.CENTER_IN_PARENT); tv.setLayoutParams(lp_tv); tv.setText("请设置日期"); button=new Button(this); RelativeLayout.LayoutParams lp_button=new RelativeLayout.LayoutParams(-2,-2); lp_button.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM); lp_button.addRule(RelativeLayout.CENTER_HORIZONTAL); button.setLayoutParams(lp_button); button.setText("设置"); button.setOnClickListener(new OnClickListener(){ public void onClick(View v) { if(dpd==null){ dpd_init(); } dpd.show(); } }); mainView.addView(tv); mainView.addView(button); setContentView(mainView); } /*dpd初始化*/ void dpd_init(){ OnDateSetListener otsl=new OnDateSetListener(){ public void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth) { tv.setText("您设置了日期:"+year+"年"+(monthOfYear+1)+"月"+dayOfMonth+"日"); dpd.dismiss(); } }; Calendar calendar=Calendar.getInstance(TimeZone.getDefault()); int year=calendar.get(Calendar.YEAR); int month=calendar.get(Calendar.MONTH); int day=calendar.get(Calendar.DAY_OF_MONTH); dpd=new DatePickerDialog(this,otsl,year,month,day); } }