Android 设置DatePickerDialog最小值和最大值
我想验证Android 设置DatePickerDialog最小值和最大值,android,datepicker,Android,Datepicker,我想验证DatePickerDialog。但用户不能将出生日期设置为大于当前日期。我需要的日期既不能小于也不能大于今天 @Override public void onClick(View v) { switch (v.getId()){ case R.id.ib_obtener_fecha: obtenerFecha(); break; } } pr
DatePickerDialog
。但用户不能将出生日期设置为大于当前日期。我需要的日期既不能小于也不能大于今天
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.ib_obtener_fecha:
obtenerFecha();
break;
}
}
private void obtenerFecha(){
final DatePickerDialog recogerFecha = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
final int mesActual = month + 1;
String diaFormateado = (dayOfMonth < 10)? CERO + String.valueOf(dayOfMonth):String.valueOf(dayOfMonth);
String mesFormateado = (mesActual < 10)? CERO + String.valueOf(mesActual):String.valueOf(mesActual);
date.setText(diaFormateado + BARRA + mesFormateado + BARRA + year);
}
},anio, mes, dia);
recogerFecha.show();
}
@覆盖
公共void onClick(视图v){
开关(v.getId()){
案例R.id.ib_obtener_fecha:
obtenerFecha();
打破
}
}
私有void obtenerFecha(){
final DatePickerDialog recogerFecha=new DatePickerDialog(这是new DatePickerDialog.OnDateSetListener(){
@凌驾
public void onDateSet(日期选择器视图,整数年,整数月,整数天月){
最终整数实际值=月份+1;
String diaFormateado=(dayOfMonth<10)?CERO+String.valueOf(dayOfMonth):String.valueOf(dayOfMonth);
字符串mesFormateado=(mesActual<10)?CERO+String.valueOf(mesActual):String.valueOf(mesActual);
日期.setText(日期+巴拉+中间日期+巴拉+年份);
}
},anio,mes,dia);
recogerFecha.show();
}
私有void obtenerFecha(){
final DatePickerDialog recogerFecha=new DatePickerDialog(这是new DatePickerDialog.OnDateSetListener(){
@凌驾
public void onDateSet(日期选择器视图,整数年,整数月,整数天月){
最终整数实际值=月份+1;
String diaFormateado=(dayOfMonth<10)?CERO+String.valueOf(dayOfMonth):String.valueOf(dayOfMonth);
字符串mesFormateado=(mesActual<10)?CERO+String.valueOf(mesActual):String.valueOf(mesActual);
日期.setText(日期+巴拉+中间日期+巴拉+年份);
}
},anio,mes,dia);
recogerFecha.getDatePicker().setMinDate(minDateInMillis);
recogerFecha.getDatePicker().setMaxDate(maxDateInMillis);
recogerFecha.show();
}
基本上,您可以访问DatePickerDialog中的DatePicker,并设置其最大日期和最小日期。我投票将此问题视为离题,因为它缺乏任何研究工作。尽管您的问题得到了答案(顺便说一句,答案不错),但如果您的代码也是用英语编写的,您可能会在下一个问题中获得更多帮助;)
private void obtenerFecha(){
final DatePickerDialog recogerFecha = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
final int mesActual = month + 1;
String diaFormateado = (dayOfMonth < 10)? CERO + String.valueOf(dayOfMonth):String.valueOf(dayOfMonth);
String mesFormateado = (mesActual < 10)? CERO + String.valueOf(mesActual):String.valueOf(mesActual);
date.setText(diaFormateado + BARRA + mesFormateado + BARRA + year);
}
},anio, mes, dia);
recogerFecha.getDatePicker().setMinDate(minDateInMillis);
recogerFecha.getDatePicker().setMaxDate(maxDateInMillis);
recogerFecha.show();
}