Datepicker和TimePicker的使用
有时候 在我们写代码时 需要有设置日期和时间这个功能,下面我来介绍下关于这功能实现相关的两个类DatePicker和TimePicker:
1.布局文件比较简单就不贴出来了,就只有两个按钮,看了图就会明白
2.Mainactivity代码:
import java.util.Calendar;
import android.os.Bundle;
import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.DatePickerDialog.OnDateSetListener;
import android.app.TimePickerDialog;
import android.app.TimePickerDialog.OnTimeSetListener;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.DatePicker;
import android.widget.TimePicker;
public class MainActivity extends Activity implements OnClickListener{
private static int year;
private static int month;
private static int day;
private static int hour;
private static int minute;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main);
//给两个button绑定监听事件
findViewById(R.id.datePicker_id).setOnClickListener(this);
findViewById(R.id.timePicker_id).setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.datePicker_id:
showDatePicker();
//调用showDatPickert()方法显示日期
break;
case R.id.timePicker_id:
showTimePicker();
//调用showTimePicker()方法显示时间
break;
default:
break;
}
}
private void showDatePicker(){
//初始化默认日期
if(year==0){
//得到当前系统日期:年.月.日
Calendar calendar=Calendar.getInstance();
year=calendar.get(Calendar.YEAR);
month=calendar.get(Calendar.MONTH);
day=calendar.get(Calendar.DAY_OF_MONTH);
}
//创建一个DatePickerDialog
new DatePickerDialog(
//上下文对象
MainActivity.this,
//绑定DatePicker对话框的监听器
new OnDateSetListener() {
@Override
public void onDateSet(DatePicker datePicker, int myYear, int myMonth, int myDay) {
//修改日期,单击按钮后显示上一次更改的日期
MainActivity.year=myYear;
MainActivity.month=myMonth;
MainActivity.day=myDay;
}
}, year, month, day).show();
}
private void showTimePicker(){
//初始化默认时间
if(hour==0){
//得到当前系统时间:时.分
Calendar calendar=Calendar.getInstance();
hour=calendar.get(Calendar.HOUR);
minute=calendar.get(Calendar.MINUTE);
}
//创建一个TimePickerDialog
new TimePickerDialog(MainActivity.this,
new OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker, int myHour, int myMinute) {
//修改时间,再次点击按钮时显示上次更改的时间
MainActivity.hour=myHour;
MainActivity.minute=myMinute;
}
}, hour, minute, false).show();
}
}
运行结果:
点击DatePicker
修改日期,并点击完成
再次点击Datepicker发现成功修改并保存了我们上次修改的日期:
同样的TimPicker也是如此,你们可以自己去实验,我这就不一一贴图。
第一次博客写的不太好,希望各位大神能够多多指点,提点意见。