DatePickerDialog的用法(一)
DatePickerDialog 是系统的一个日期选择组件
先下基本的效果
有两种调用方式:
第一种:在当前的activity实现 DatePickerDialog.OnDateSetListener 接口,并且实现接口的方法 OndateSet()
这是项目的源码:
public class AddActivity extends AppCompatActivity implements DatePickerDialog.OnDateSetListener,View.OnClickListener { public void showTimeSelect(){ Calendar calendar = Calendar.getInstance(); int mYear = calendar.get(Calendar.YEAR); int mMonth = calendar.get(Calendar.MONTH); int mDate = calendar.get(Calendar.DAY_OF_MONTH); DatePickerDialog datePickerDialog = new DatePickerDialog(this, this, mYear, mMonth, mDate); datePickerDialog.show(); } @Override public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) { System.out.println(year+"-"+(month+1)+"-"+dayOfMonth); } }
记得自己调用 showTimeSelect() 方法哦 ! 非常重要!不然看不到效果!
第二种:直接调用
DatePickerDialog datePickerDialog = new DatePickerDialog(AddActivity.this,new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) { } },mYear,mMonth,mDate);
datePickerDialog.show();
非常 非常方便!!
接下来看另外一个效果图:
同样是日期选择但是效果截然不同!当然这也是通过 DatePickerDialog 实现的,只是提供了不同的UI效果
看下调用代码:
DatePickerDialog datePickerDialog = new DatePickerDialog(AddActivity.this, AlertDialog.THEME_HOLO_LIGHT, new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) { } },mYear,mMonth,mDate);
datePickerDialog.show();
只是在原来的参数上面多加一个主题参数就可以实现了,这个需要在 android4.0以上的版本才可以实现,目前新版本的安卓系统已经不再推荐使用这个方式进行UI修改。
很多时候要让这个日期选择器跟我们的UI匹配,了解怎样去设置UI显得也非常重要了,自定义 DatePickerDialog UI待续。