当前位置 : 主页 > 手机开发 > android >

Android日期选择器对话框DatePickerDialog使用详解

来源:互联网 收集:自由互联 发布时间:2021-08-03
调用Android原生日期选择器对话框就是DatePickerDialog,具体内容如下 在Android4.4系统上效果如图: 在Android5.0以上效果如图: 1、Activity的onCreate方法中获取当时的年,月,日 Calendar ca = Cal

调用Android原生日期选择器对话框就是DatePickerDialog,具体内容如下

在Android4.4系统上效果如图:

在Android5.0以上效果如图:


1、Activity的onCreate方法中获取当时的年,月,日

Calendar ca = Calendar.getInstance();
mYear = ca.get(Calendar.YEAR);
mMonth = ca.get(Calendar.MONTH);
mDay = ca.get(Calendar.DAY_OF_MONTH);

2、通过按钮触发日期选择器

btn_day.setOnClickListener(new View.OnClickListener() {
  @Override
  public void onClick(View v) {
    //TODO 调用时间选择器
    new DatePickerDialog(MainActivity.this, onDateSetListener, mYear, mMonth, mDay).show();
  }
});

3、实现选择器的监听,并将获取到的结果设置到TextView上:

/**
 * 日期选择器对话框监听
 */
private DatePickerDialog.OnDateSetListener onDateSetListener = new DatePickerDialog.OnDateSetListener() {

  @Override
  public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
    mYear = year;
    mMonth = monthOfYear;
    mDay = dayOfMonth;
    String days;
    if (mMonth + 1 < 10) {
      if (mDay < 10) {
        days = new StringBuffer().append(mYear).append("年").append("0").
            append(mMonth + 1).append("月").append("0").append(mDay).append("日").toString();
      } else {
        days = new StringBuffer().append(mYear).append("年").append("0").
            append(mMonth + 1).append("月").append(mDay).append("日").toString();
      }

    } else {
      if (mDay < 10) {
        days = new StringBuffer().append(mYear).append("年").
            append(mMonth + 1).append("月").append("0").append(mDay).append("日").toString();
      } else {
        days = new StringBuffer().append(mYear).append("年").
            append(mMonth + 1).append("月").append(mDay).append("日").toString();
      }

    }
    tv_data.setText(days);
  }
};

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。

网友评论